-
Hello, what is the preferred workflow after creating the geometry of a component or reactors. I see that there are several ways to to turn this geometry into a h5m file for neutronics simulations. Currently it looks as though you can export into stp or stl cad formats and use mbconvert to turn these in to h5m format. This can be done using: the cad_to_h5m (for stp and stl) Also the latest method uses the export_dagmc_h5m function. This seems to use Gmsh and MOAB to create a mesh and export to h5m format respectively and is packaged with paramak. I guess this is the latest way of converting? I tried using this method and most of the reactor design wont convert, example: Task 12 of the neutronics workshop wont run through this method throwing a Value error : "ValueError: 37 volumes found in Brep file is not equal to the number of material_tags 17 provided." This uses the BallReactor Class though other reactors will not convert also for different reasons. Though it will work through the other method of creating a stp or stl file and using one of the above methods to create a h5m file. Could you please help me find the preferred workflow and why? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Thanks for raising this, looks like you have found all the methods I've made over the last few years. In addition to file formats they all have slightly different utility. I think these details are in the readme for each project but it is good to have a summary in one place. cad_to_h5m requires Cubit to be installed. While Cubit Coreform is free for students Cubit commercial is not free. This method also imprints and merges the surfaces while others don't. This allows for faster transport. It is harder to setup as one needs Cubit and the Cubit plugin installed. cad_to_dagmc accepts input files like STP and Brep format but importantly it also accepts CadQuery objects. This allows for a faster workflow without the reading and writing of files. This is the method I am working on the most as I think it has the most potential. You rightly mention that this method uses Gmsh and MOAB but it is not limited to these two as it makes use of several modular packages. In the future it could use different meshers and h5py instead (this would allow it to work on windows). I am currently writing a paper on cad_to_dagmc so the details of how this works (or sometimes doesn't) will be covered in detail shortly. stl_to_h5m Is perhaps the most simple and robust but also the most limited. It needs non overlapping STL files as an input. The responsibility to make these is on the user. So it has quite strict input requirements. There is one other route which is actually used by cad_to_h5m. As the packages are modular this could also be used on its own. vertices_to_h5m accepts collections of triangles and vertices and makes a h5m file from this raw input. Automated conversion of CAD to DAGMC is unfortunately not simple and these are just my efforts to automate the process. They are all open source and contributions to fix bugs or improve them are most welcome. I don't think there is a preferred workflow, it depends on the situation. Perhaps cad_to_dagmc will eventually be my preferred route but it still needs a lot of work on the package and the dependencies. I should look into the error in task 12 and report progress on this new issue, thanks for letting me know much appreciated |
Beta Was this translation helpful? Give feedback.
Thanks for raising this, looks like you have found all the methods I've made over the last few years.
In addition to file formats they all have slightly different utility. I think these details are in the readme for each project but it is good to have a summary in one place.
cad_to_h5m requires Cubit to be installed. While Cubit Coreform is free for students Cubit commercial is not free. This method also imprints and merges the surfaces while others don't. This allows for faster transport. It is harder to setup as one needs Cubit and the Cubit plugin installed.
cad_to_dagmc accepts input files like STP and Brep format but importantly it also accepts CadQuery objects. This allows for a fas…