- Save ErrorBlocks.SLDASM and convert to ACIS format or directly save and open ErrorBlocks.SAT.
- Fix mistakes within the model using ANSYS SpaceClaim.
- Import file into Trelis/Cubit and inspect model for any import issues.
- Create the graveyard volume and define implicit complement.
- Finish model in Cubit/Trelis.
- Imprint and Merge volumes
- Assign materials
- Export the model to .h5m
Exporting the model to .h5m requires the DAGMC trelis plugin, which should be installed before starting the tutorial. Instructions are here.
- Execute the workflow with a model that has geometric issues to be resolved in SpaceClaim.
- Work through important processes on an example that is easy to visualize and understand.
- Provide a general understanding of what issues could arise on more complex models.
Any CAD engine should work for this process as long as it can export to a format importable by SpaceClaim or Cubit/Trelis.
- Download the ErrorBlocks.SLDASM file from this page and open in Solidworks.
- Export the assembly/part to ACIS format (.sat file extension)
- ACIS format 22 is preferred (default for Solidworks)
- Use save or export feature and select ACIS (.sat) format
This geometry consists of 4 cubes that are 100 cm on a side. One of the cubes has a threaded hole through it with a 5 cm radius. |
Notes
- The preferred format is ACIS (.sat). Note that multiple file types could be used, but there is anecdotal evidence that suggests .sat files work the best for this process. Otherwise formats such as STEP and STL are also able to be imported to Trelis/Cubit.
- This step is unnecessary unless you want to explore the model in Solidworks or learn how to save file as .sat.
- To skip this step download the ACIS file titled "ErrorBlocks.sat" and move onto ANSYS SpaceClaim section.
SpaceClaim is useful for cleaning models that have general issues such as small gaps, overlaps, edge contacts, and unnecessary geometric detail. More general SpaceClaim tutorials/support can be found here. Note: It is possible to perform these cleaning procedures using Cubit/Trelis, but that is not illustrated in this tutorial.
-
Open ErrorBlocks.sat by going to File -> Open and then sorting by .sat type files.
-
Identify all general issues which exist within the model:
- Visually:
- Find one example of each general issue as described below. All four are relatively conspicuous and easy to find visually.
- With SpaceClaim tools:
- To identify gaps navigate from Prepare -> Clearance -> Detect. In this case to find the gap enter a maximum distance of
1cm
in the Find Options box. The gap will be highlighted in red. - To identify overlaps navigate from Prepare -> Interference -> Remove. There are technically two volumes of interference and both will be highlighted in red.
- The Imprint tool highlights any coincident edges or faces within the part and can make it easier to find edge contacts as well as overlaps. This tool can be found by going Prepare -> Analysis -> Imprint.
- There are no built-in tools in SpaceClaim to generally identify unnecessary details.
- To identify gaps navigate from Prepare -> Clearance -> Detect. In this case to find the gap enter a maximum distance of
- Visually:
Descriptions of General Issues
Gaps: when particles encounter gaps they may lose track of which volume they are in and be lost. In this model there is one obvious gap, but for real models gaps are only an issue when the gap is around 10^-6 units (cm). In many cases small gaps can also be fixed by the imprint/merge step in Trelis/Cubit This gap is made larger in this example so that it can be found visually as well as with the SpaceClaim tool.Overlaps: when particles encounter overlaps between two volumes they may not be able to determine which volume they are in and be lost. There is one volume that is obviously overlapping with other volumes.
Edge contacts: there is a possibility that when two volumes are only in contact on a single edge it can cause an issue with surface definitions. There is one example of an edge contact in this model.
Unnecessary Detail: all details in the CAD model are included in the faceting process and in the final analysis. Fine geometric details can be computationally expensive. The physical threads included in this model are one example of an unnecessary detail. In other models, whether fine geometric detail is considered unnecessary or not depends on the desired level of detail in the simulation and the computational resources available.
- Fix the general issues with the tools available in SpaceClaim.
Notes
- Most often in real models unnecessary details must be determined intuitively and visually while overlaps, edge contacts, and small gaps cannot be found visually.- For all of these edits one must work closely with the creator of the model/experiment to determine which complications are important to the end result and which are able to be changed.
Cubit is a meshing pre-processing software with CAD capabilities and Trelis is the commercially available version. It is used in this workflow to assign materials to volumes and export the model to the DAGMC .h5m format. Trelis and Cubit have both a GUI and a command line interface. Nearly all commands can be run through either one.
Steps | Graphic User Interface | In Command Line |
---|---|---|
Import the .sat file into Trelis/Cubit | - Can be imported using the GUI with File -> Import. - Select the file through file explorer and open. - One important qualifier to include is [attributes_on] . |
- In the command line the simple form of the command is import acis [filepath] - This command can be appended with further commands that can be found by typing help import acis . - These qualifiers correspond with the options given when importing files through the GUI. - One important qualifier to include is [attributes_on] . |
How to save progress for the file as ACIS | - Click on File -> Export and select the file destination and name. - Make sure that it is being exported as ACIS (.sat) and press ok to save. |
- In command line type export acis [filepath] overwrite . |
Make sure units/distances are correct and if not, fix them | - A distance within the model of "X units" should have a metric distance of "X centimeters". - To check this click on a surface/line with a known metric value and then navigate to the properties page and check the surface area or curve length. - On the Command Panel click on Geometry (leftmost option) -> Volume -> Transform -> Scale (from dropdown menu) -> Enter Scale Factor -> Apply |
- A distance within the model of "X units" should have a metric distance of "X centimeters". - To check this in the command line the general form is list [entity name and number] geom . For example to check the geometry of volume 1 enter list Volume 1 geom . - In command line enter vol all scale [Scale Factor] . For example parts from solidworks would require vol all scale 0.1 to convert the units to centimeters. |
Inspect validity of models and resolve overlapping volumes | - To find volume overlaps click Power Tools->Diagnose Geometry tab->click Options button->Overlap checks-> check Overlapping Volumes->Done->click Analyze button | - In the command line one can validate volumes by typing validate vol all . One may try to repair any problem volumes identified with healer autoheal [problem volume_id] . One may also need to use healer analyze vol all to identify other potential problem volumes. - One should use the graphical tool to detect volume overlaps. Overlaps can be resolved using the command remove overlap volume command in Trelis 17.1 and higher (for details type help remove overlap volume ) or use standard boolean operations in Cubit/Trelis. |
Notes
- A more general Cubit/Trelis DAGMC basics tutorial can be found at https://svalinn.github.io/DAGMC/usersguide/trelis_basics.html.- "Command Panel" and "Command Line" are necessary for GUI and command line methods respectively. To enable these select View and switch "Command Line" and/or "Command Panel" to visible.
- Scale will most likely be off by a factor of 10. For example models from Solidworks will most likely be increased by 10x or 100cm to 1000 units, but this scaling changes based on the initial CAD program. You must scale every entity down or up by that factor to match units to cm.
The graveyard volume is not part of the CAD geometry being analyzed, but plays a role in the final analysis. Particles stop and are tracked once they reach the graveyard volume.
Steps | In Graphic User Interface | In Command Line |
---|---|---|
Create a cube large enough to envelop all other volumes. | - Select Geometry -> Volume -> Create and select Brick from the drop down menu. - Type 500 in each dimension box (width, height, depth) and press Apply to create the block. |
- The general form is create [shape] [dimensions based on shape] . - For a simple cube 500x500x500 you can enter create brick x 500 . |
Create another slightly larger cube to be used for graveyard. | - In command panel create another brick in the same way as part 1, using 750 as the new dimension in each dimension box. | - Enter create brick x 750 |
Center volumes within the larger cubes. | To move the blocks in command panel select Geometry -> Volume -> Transform and select Move from the drop down menu. - Type "5 6" into the Volume ID(s) box. Then Select Method -> Distance and type 100 into the X Distance box. This distance/direction may vary. |
- General form is move vol [volume ids] [axis] [distance along axis] - Enter move vol 5 6 x 100 . |
Subract smaller cube from larger. | - Select Geometry -> Volume -> Boolean and select Subtract from the dropdown menu. - Select volume 6 as volume A and volume 5 as volume B, click Apply. |
- Enter subtract vol 5 from 6 |
After this step you will be left with a large, hollow cube that can be used as a graveyard volume.
Notes
- This volumes could also be created in another CAD program with the same results, this is an example of how you could create this volumes in Trelis and Cubit.- Most likely the volumes will be slightly off centered in the x direction, but the larger bricks will be centered with one another. This may vary based on the initial CAD program.
- To see the blocks better you can select the wireframe option in the top toolbar. It is directly to the right of the undo arrow on the toolbar. Also you can click on the axis on the bottom left of the volume viewing area to get a straight on (x,y) view. -
Imprinting and Merging surfaces accelerates the DAGMC process by combining surfaces.
- Imprint and Merge all shared surfaces in the model.
- If using the GUI, in command panel select Geometry -> Volume -> Imprint Merge and select Imprint and Merge from the dropdown menu. Then type "all" into the Volume ID(s) box and click Apply.
- Otherwise in command line type
imprint body all
and then enter. Then typemerge all
. - Now all surfaces that previously overlapped have been merged into one surface shared by both volumes.
- One should re-check for overlapping volumes in case of any problems in the imprint/merge operations
Notes
- The default tolerated distance for imprinting/merging surfaces is 5.0e-4 units.- Combining surfaces reduces two surfaces and two sets of faceting areas down to one, decreasing the computational power required as well as eliminating possible errors where particles exist simultaneously in two surfaces.
Most commands for this section are best implemented through the command line. More general instructions can be found here.
A method (implicit complement) is implemented automatically during a DAGMC run that creates a volume in all regions of space not defined by the CAD model. By default, this volume is assumed to be a vacuum, but it can be assigned to a different material as shown below. This means that while one could explicitly create void/vacuum volumes, it is most often not necessary.
- The general command for assigning materials and densities in Cubit or Trelis
group "mat:[assigned material number]/rho:[assigned density]" add vol [volume numbers]
where the density is in [atoms/barn-cm] for positive values and [g/cc] for negative values. - The blocks will be given two different materials and then the graveyard volume will be assigned. These material assignments will depend on the material library you create/use for the project.
- To assign one block to the first material use
group "mat:1/rho:0.0223" add vol 1
- To assign the rest of the blocks (volumes 2,3,4) to the second material use
group "mat:2/rho:0.03" add vol 2 to 4
- To assign the graveyard volume use
group "mat:Graveyard" add vol 7
- To assign one block to the first material use
- To assign a non-void/vacuum material to the implicit complement you can add the graveyard to a second material group. This second material group will be applied to the implicit complement.
group "mat:3/rho:0.04" add vol 7
The DAGMC trelis plugin translates the CAD model into a faceted model that can be used for DAGMC particle tracking. Instructions as to how to install this plugin can be found here.
- Once the plugin is correctly installed you should receive the message
Loaded Svalinn plugin DAGMC export command available
in the command line. - Once all issues are resolved in the model, export the file as .h5m, this command must be executed through the command line.
- The general form of the export command is
export dagmc "<filename>" [options]
. To see the options available enterhelp export dagmc
into the command line. - The filename should include the filepath after the working directory so that it designates where the file ought to be saved after export.
- For this part
export dagmc "~/Path/To/Folder/ErrorBlocks.h5m"
will create the part as a .h5m with default settings in the desired folder.
- The general form of the export command is