Release Notes for Coreform Cubit 2023.11
Coreform is pleased to announce Coreform Cubit 2023.11, which features many new capabilities and improvements improving support for nuclear energy applications. Enhancements include an exporter to the DAGMC radiation transport code, improvements to the ABAQUS export to support the MCNP radiation transport code, as well as an MCNP importer that reconstructs MCNP models within Coreform Cubit. A new coarse trimesher setting was added to support producing meshes for radiation transport codes used within the nuclear energy industry. (Download Coreform Cubit here.)
Released: 2 November 2023
Table of Contents
Support for Radiation Transport Codes
DAGMC Export
Direct Accelerated Geometry Monte Carlo (DAGMC) is a software package that allows users to perform Monte Carlo radiation transport directly on CAD models. The DAGMC community previously developed a Coreform Cubit plugin. Coreform Cubit now contains native capability to export DAGMC .h5m
files. Users familiar with the original DAGMC plugin will now use Coreform Cubit’s native Exodus-based workflows for assigning materials and/or boundary conditions (i.e., block
, sideset
, nodeset
) rather than the group
-based workflow implemented within the original plugin.
Export cf_dagmc <'filename'> overwrite
For more information see: Exporting DAGMC
MCNP Import
The Monte Carlo N-Particle® (MCNP®) code, developed by Los Alamos National Laboratory, can be used for general-purpose transport of many particles including neutrons, photons, electrons, ions, and many other elementary particles, up to 1 TeV/nucleon. The transport of these particles is through a three-dimensional representation of materials defined in a constructive solid geometry, bounded by first-, second-, and fourth-degree user-defined surfaces. In addition, external structured and unstructured meshes can be used to define the problem geometry in a hybrid mode by embedding a mesh within a constructive solid geometry cell, providing an alternate path to defining complex geometry.
Coreform Cubit now provides a method for importing MCNP files. The standard MCNP file has a .i extension. This file format contains Constructive Solid Geometry (CSG) models. These models are converted into Boundary Representation (B-Rep) files using the ACIS modeling engine.
import cf_mcnp <'filename'> [verbose] [debug] [debug_output] [debug_input] [extra_effort] [skip_mats] [skip_merge] [skip_imps] [skip_nums] [skip_graveyard] [skip_imprint] [uwuw_names] [tol <specific tolerance>]
For more information see: Importing MCNP
Improved assembly support when exporting to ABAQUS / MCNP
Various enhancements made to ABAQUS export include writing additional element sets and node sets based on groups, specifying coordinate frames, and new ‘instance_per_block’ option. These additions will streamline using Coreform Cubit with MCNP.
- Write additional element sets and node sets based on groups
- Documentation improved for specifying coordinate frames
- A new
instance_per_block
option was added for automatic part instancing based on defined blocks
For more information see: Exporting ABAQUS
Geometry
Simplification of merged surfaces now supported
The simplify command for compositing surfaces now supports merged surfaces in addition to external surfaces.
For more information see: Simplify Geometry
Improved behavior for splitting surfaces
Coreform Cubit’s previous ability to split fillet surfaces was not ideal, creating a split that looked like a projection of a linear curve. The splitting routine was fixed so that the split follows the curvature of the surface, creating a more expected and ideal result.
For more information see: Split Surface
New Reduce Bolt Patch command
The new Reduce Bolt Patch command in Coreform Cubit offers an alternative method for representing bolts in simulations. It replaces bolt geometry with concentric circular surfaces imprinted on the model, centered on the bolt axis. Sidesets are automatically applied to these surfaces, representing preload forces for analysis purposes. By default, the command utilizes the Shigley frustum to determine the radius of the sideset patches, but the desired radii can also be directly designated. Additionally, the resulting patches can be meshed using this command, and sidesets can be customized with incremental IDs and names.
Two bolts showing before and after the reduce bolt patch command was applied.
The reduce bolt patch command is one of several options for reducing fastener geometry for use in analysis. This option has also been added to the geometry power tool machine learning tools for classifying geometry. When designated as a bolt, additional solution options are presented that now include the reduce bolt patch
command.
A new command panel for setting up and previewing options for the reduce bolt patch comand can be accessed from Geometry->Modify->Volume->Reduce->Bolt Patch
(a) New Reduce Bolt Patch GUI panel (b) Geometry Power Tool, machine learning Classify Parts diagnostic used to identify bolts. New power tool solutions for bolts include reduce bolt patch command.
For more information see: Reduce Bolt Patch
Meshing
Coarse mesh setting for trimesh scheme
While meshing is most commonly seen as an operation for PDE-based simulations that require high-quality regular-shaped elements for accuracy, there are tangential industry applications that also utilize mesh datastructures in their workflows. Examples of these include additive manufacturing (slice generation) and nuclear energy (Monte Carlo particle transport). These applications typically resolve the geometry to high-accuracy through the use of a minimal number of high aspect-ratio triangles. To support these applications Coreform Cubit now supports a coarse
setting in the trimesh
scheme. This allows users to visualize the mesh prior to export (e.g., to STL, DAGMC ) as well as produce different density meshes on different geometric entities (as opposed to a global parameter set on export) and otherwise access the full utility of Coreform Cubit when producing their meshes.
[Set] Trimesher Coarse {on|OFF [<ratio=100.0> <angle=5.0>]}
(left) Default trimesh
settings, (right) New, coarse
option with default settings.
For more information see: Trimesh
Improved robustness of triangle meshing
Triangle meshing robustness is improved and a correct mesh can now be produced in a few specific combinations of compositing and merging surfaces. Additionally, on some CAD models, triangle meshing would fail due to low precision geometric evaluations. These failures were a regression introduced in a previous version of Coreform Cubit from improving performance. Geometric evaluations were enhanced to retain some performance and re-establish robustness.
Improved robustness of node equivalencing
Equivalencing nodes is now more robust after importing multiple mesh files as free mesh. Additionally, higher order nodes are now equivalenced when they exist. Performance has been improved allowing the equivalence operation to complete quicker on larger models.
For more information see: Merging a Free Mesh
Updated Sculpt Command Syntax
Previously, the sculpt command could be executed without arguments, utilizing the current volumes as the default target geometry for meshing. However, to accommodate various file types (e.g., STL, diatom, microstructures) containing geometry, the sculpt command now requires the designation of the target geometry as the first argument when invoking the command.
For more information see: Sculpt
Midnode correction on mesh-based geometry
Coreform Cubit previously performed automatic midnode correction during the import mesh geometry command, enhancing the quality of high-order tetrahedral elements (TET10) by straightening edges when quality was below a designated threshold. Users can now toggle the midnode_correction option during import, allowing control over this capability. By default, midnodes will not be corrected based on quality.
For more information see: Midnode Correction
Graphical User Interface
New right-click automatic surface selection options
After selecting two surfaces (or collections of surfaces), a new right-click select between option selects all surfaces between the two already selected surfaces, given there is only a single path of surfaces between them. Merged surfaces are skipped over. If a single surface is selected, the new select enclosure option will select all connected surfaces, forming a water-tight enclosure.
For more information see: Right Click Commands for the GUI Graphics Window
Python Interface Enhancements
New Methods
get_connected_surfaces()
- Given a surface, returns all connected, unmerged surfaces.
get_bolt_shigley_radius()
- Determines the effective load radius surrounding a bolt based on the diameter of the head and the upper and lower volume thicknesses based on Shigley.
Deprecated Methods
get_displacement_coord_system()
Cubit bug fixes and enhancements
Improved OpenMPI version compatibility
When running Sculpt on Linux and macOS, the version of OpenMPI used is no longer restricted to version 4.0. One may use any version of OpenMPI which is ABI compatible with version 4.0. This includes 3.0, 3.1, 4.1 and 5.0. Running Sculpt with other versions of OpenMPI may be useful if targeting a specific hardware which the distribution-included OpenMPI doesn’t support.
New extended parsing options with blocks, nodesets and sidesets
Extended parsing of blocks, nodesets and sidesets in mesh is now fully supported. For example, one can get sidesets using a sideset in face 40
syntax or get blocks using a block in hex 32
syntax. This feature now works whether the blocks, sidesets or nodesets are defined by geometry or mesh. This may be useful when writing general commands to work on both types of definitions.
Generalized coordinate frame commands
The syntax for creating coordinate frames has been updated to no longer include the word exodus
. The is change is to emphasize that coordinate frames are available for use with ABAQUS as well as EXODUS. Old journal files will continue to work when using the word exodus
.
For more information see: Coordinate Frames
New string option in locate command
The following locate commands now support an optional string parameter allowing customization of the displayed label. The supplied string is used as the label instead of the default xyz position or name of the entity, as shown below.
locate location [<string>]
locate [geometry] [genesis_entity] [bc_entity] [contact pair] [node] [element] [<string>]
For more information see: Drawing, Locating, and Highlighting Entities
Defects Fixed in Coreform Cubit 2023.11
Ref # | Description |
---|---|
MESH-4178 | SHOW option in GUI not echoing info to command line |
MESH-5135 | Refine in Sculpt based on geometry id |
MESH-5465 | Review and add unsupported sculpt options to the GUI |
MESH-5539 | Coreform Cubit export to MCNP (ABAQUS) |
MESH-5630 | Equation-Controlled Distribution Factors broken since 15.0 |
MESH-5642 | Deploy the latest version of Verdict on https://github.com/sandialabs/verdict |
MESH-6328 | Change package layout to comply with mac format |
MESH-6585 | Failure in blunt tangency operation |
MESH-6740 | Long term support of SGM python scripts |
MESH-6934 | Upgrade gtest for SGM, UMR and Coreform Cubit |
MESH-6957 | Align command doesn’t work with surf |
MESH-6961 | Graphics curves bleed through solid |
MESH-6971 | Mpiexec issue with sculpt |
MESH-7102 | Sideset X add – weird ERROR message |
MESH-7104 | Align not working |
MESH-7124 | Update abaqus export to support mcnp |
MESH-7126 | Why is sculpt getting called in my Coreform Cubit journal workflow |
MESH-7128 | Support sideset in face |
MESH-7132 | Better cavity selection |
MESH-7133 | View in True hidden line mode and view in hidden line mode are the same? |
MESH-7140 | Sculpt meshing from SPN file |
MESH-7252 | Volume Id not being honored in individual .cub files with multiple import cubit commands |
MESH-7254 | Sculpt to output memory usage between refinement |
MESH-7271 | Buggy connected_sets option in ‘remove surface’ command |
MESH-7276 | Listing Error in Aprepro Loop |
MESH-7307 | Webcut with general plane case not working |
MESH-7310 | Meshing “simple” domain |
MESH-7313 | Split surface not working |
MESH-7314 | Higher order nodes not equivalenced |
MESH-7315 | Surface normal inconsistent through merge operation & trimeshing |
MESH-7320 | Import SGM moves part |
MESH-7321 | Split surface not working great |
– | Re-enable equiangle skew quality measure for wedges |
– | Add missing volume webcuts to entity-based navigation |