CUBIT™ 15.8 Release Notes

Image of cubit-15.8-logo1

Product Description

CUBIT is a full-featured software toolkit for robust generation of two- and three-dimensional finite element meshes (grids) and geometry preparation. Its main goal is to reduce the time to generate meshes, particularly large hex meshes of complicated, interlocking assemblies.

Product Highlights

Meshing: CUBIT is a solid-modeler based preprocessor that meshes volumes and surfaces for finite element analysis. Mesh generation algorithms include quadrilateral and triangular paving, 2D and 3D mapping, hex sweeping and multi-sweeping, tet meshing, and various special purpose primitives. CUBIT contains many algorithms for controlling and automating much of the meshing process, such as automatic scheme selection, interval matching, sweep grouping and sweep verification, and also includes state-of-the-art smoothing algorithms.

Geometry Preparation: One of CUBIT’s strengths is its ability to import and mesh geometry from a variety of CAD packages. CUBIT currently integrates the ACIS and Catia geometry kernels directly within its code base, allowing direct manipulation of the native CAD geometry format within CUBIT. This reduces the errors and anomalies so often associated with geometry translation. CGM (Common Geometry Module) also boasts a facet-based geometry kernel developed at Sandia that can be used for remeshing or editing old mesh files or models defined by triangle facets. In addition, CUBIT has developed a comprehensive virtual geometry capability that permits local composites and partitions to geometry without modifying the underlying native geometry representation. The user can choose to ignore, clean-up or add features to the model allowing greater flexibility to meshing algorithms to generate better quality elements.

CUBIT Environment: CUBIT has developed both a convenient command line interface with an extensive command language as well as a polished graphical user interface environment. The GUI is based upon the cross-platform standard Qt, which allows the same look and feel on all supported platforms. Also included is a graphical environment based upon the VTK graphics standard which has been optimized for display and manipulation of finite element data and geometry. Fast, interactive manipulation of the model is a tremendous advantage for models with thousands of parts or millions of elements.

For more information on CUBIT, including licensing arrangements and terms see the CUBIT website

New Features in CUBIT™ 15.8

Index of New Features

Graphical User Interface

Reduce Command Panels

Geometry Power Tool

Selection by entity name in graphics window


New Metrics: Normalized Inradius and Mass Increase Ratio

More Criteria For Snapping Higher-order Nodes

Geometry-Aware Spider Blocks


New Reduce Commands

Simplify Bolt

Reduce Bolt Fit

Reduce Bolt Core

Reduce Bolt Spider


New Sculpt options

Misc Improvements

Graphics, Utilities, etc.

User-developed Python scripts now included with Cubit

New CubitInterface Functions

Uniform Mesh Refinement

Graphical User Interface

Reduce Command Panels

A series of new command panels supporting the new reduce options have been added. These can be found in the Cubit command panels at Geometry->Volume->Modify->Reduce. (See the geometry section of this document for more information)

Geometry Power Tool

When the classification diagnostic is used, volumes that have been classified as bolts now provide a broad range of reduce solutions that can be applied directly to the selected bolts. The reduce command panels can also be accessed directly from the volume solutions, allowing for rapid preparation of bolts for analysis.

Selection by entity name in graphics window

The right click menu now provides an option to select entities that share the same name. It will select entities that have the same prefix up to the “@” character.

When selecting a chamfer surface, ‘select chamfer chain’ option available in right-click context menu.

Image of select_chamfer_chain.png


New Normalized Inradius and Mass Increase Ratio metrics added to Cubit

Two new metrics has been added to Cubit: Normalized Inradius and Mass Increase Ratio.

Mass Increase Ratio
The Mass Increase Ratio metric is based on the timestep metric and can be used as a guide to determine how much an element’s mass can be scaled during analysis, to typically increase timestep. Users specify a minimum ‘target timestep’ and then use this metric to see how much an element’s mass will be scaled by to meet the specified timestep. Available for use on tets and hexes.

Normalized Inradius
For tets only, the Normalized Inradius is the ratio of the minimum subtet inner radius to the outer tet radius (circumsphere). To find the subtet inner radius, the tet is broken up into 12 subtets, using mid edge nodes. The Normalized Inradius metric is also valid for linear elements, except that all mid-edge nodes are defined as the midpoint of their corner nodes. 

More Criteria For Snapping Higher-order Nodes

Cubit’s ‘set node constraint’ command has been enhanced to include the ‘normalized inradius’ metric to determine if mid-edge nodes should be snapped to geometry. A user-defined minimum threshold metric value has also been added to the command:

set Node Constraint [on|off|SMART][tet quality [distortion|NORMALIZED INRADIUS]][threshold <value=0.15>]

Geometry-Aware Spider Blocks

When creating spider blocks with the command:

Block <id> Joint [Vertex <id> | Node <id>] Spider {Surface|Curve|Vertex|Face|Tri|Node} <range> [preview][Element Type{ bar | bar2 | bar3 | BEAM | beam2 | beam3 | truss | truss2 | truss3 }]

and geometry (surface|curve|vertex) is referenced, the spider block is linked to that geometry, allowing the spider to update/regenerate the BAR elements if the mesh on the geometry is delete, remeshed, or translated.


New Reduce Commands

Several new options were added to the reduce command for rapidly preparing a volume identified as a bolt for analysis. These can be used in conjunction with the geometry power tool’s classification tool which will use machine learning to identify volumes as bolts. In addition to geometry simplification, most of the reduce options allow for block assignment and meshing as part of the command. The new options include the following additions to the reduce command.

Simplify BoltPerforms defeaturing only the bolt geometry.bolt_simplify2.png
Reduce Bolt FitDefeatures a bolt, and fits bolt to surrounding geometry.bolt_fit2.png
Reduce Bolt CoreDefeatures a bolt and generates a cylindrical core geometry surrounding the bolt.bolt_core2.png
Reduce Bolt SpiderGenerates a spider joint in place of a bolt.bolt_spider_j2g2.png


New Sculpt options:

  • stitch_parallel option combines parallel files when no Nemesis data is included
  • match_sidesets_nodeset to more precisely define boundary between sides when using ‘match_sidesets’ option.
  • material_namesideset_name, and nodeset_name added to define names on materials, sidesets, and nodesets respectively.
  • sideset and nodeset to allow for user-defined sidesets and nodesets based on xyz bounding box boundaries.
  • large_exodus to generate output Exodus file(s) to allow IDs greater than 2^31 (2.14 Billion).
  • input_mesh option under the gen_sidesets option. Used with the input_mesh option where an exodus file is used as the base grid. Only sidesets and nodesets defined in the input exodus mesh are transferred to the output mesh.

Misc Improvements:

  • Allow better capture of STL vertices with the capture=5 option.
  • Quality improvements interface of domain boundary and level-set surfaces. Adding grid cells in special cases.
  • More robustness to enforce periodicity.
  • Bugs in defeaturing, when not retaining void mesh.

Graphics, Utilities, etc.

Python script library

The Python-Cubit enhancement code base is a collection of functions to enhance geometry selection, geometry manipulation, meshing, mesh smoothing, and other Cubit functions. Many of these scripts utilize volume names and geometric data such as surface area, surface type, etc. as a way to filter out geometries, and provide a powerful id-less method.

These scripts are located in the cubit bin directory or can be downloaded from (Sandia Users Only).

These functions have been added to nightly tests, to assure compatibility with the latest Cubit code.

New CubitInterface functions

CubitInterface is CUBIT™’s python module that provides extensive capability for querying and modifying data in CUBIT™. The following functions were added to CubitInterface for version 15.8.

get_all_ids_from_nameGet all ids of a geometry type with the prefix given by string.
get_hole_surfacesGiven a surface, returns all adjacent surface defining a hole.
get_surface_hole_collectionsGiven a volume(s), returns the collections of surfaces that define holes.
is_hole_surfaceReturn whether the surface is part of a hole.
best_edge_to_collapse_interior_nodeGiven a node owned by a surface, returns the id of the best edge to collapse, so that the node is no longer on the surface.
get_continuous_curvesGets a list of continuous curves that have tangents with 180 degrees +/- and defined tolerance.
get_n_largest_distances_between_meshesComputes the ‘n’ largest distance from the nodes of the first entity to the elements of the second

Uniform Mesh Refinement

The uniform mesh refinement tool is now packaged with CUBIT™ as “extra”. 

The “extra” tool is standalone code that refines a mesh stored in the Exodus format, uniformly splitting every element in the mesh into a number of sub-elements, and writes the fine mesh to a new Exodus file. The resulting elements have roughly half the edge length of the original mesh. The algorithm uses an efficient streaming pipeline with low memory requirements. On recent CPUs with an SSD (solid state drive), it will write a mesh up to 4 billion elements or nodes in only a few minutes, and millions of elements or nodes in seconds or less.In this release of extra, only blocks and sidesets of tetrahedra (4 node) and triangles (3 node) are supported. When a geometry file (STEP format) is provided, projection of new nodes to geometry is performed. Each TET element results in 8 new TET elements, each TRI results in 4 new TRI elements. Resulting blocks and sidesets in the output mesh will have the same IDs and names as the input mesh. In addition, a quality metric can be computed on the initial and refined mesh. Finally, the surface mesh of the block boundaries can be exported for visualization purposes.The tool can be run from the command line as:

/projects/cubit/extra --help
Uniformly refine an ExodusII mesh, optionally matching CAD geometry. Usage: /projects/cubit/extra [OPTIONS] [INPUT] [OUTPUT] Positionals:  INPUT FILE                  Input mesh file (coarse mesh).  OUTPUT FILE               Output mesh file (refined mesh). Options:  -h,--help                   Print this help message and exit  -g,--geometry FILE    Snap boundary to geometry given in STEP format  -b,--boundary            Output the boundary mesh as OBJ file  -m,--metrics              Print element quality in input mesh and exit  -j,--jobs N:UINT in [0 - 30]                              Number of concurrent jobs. 0 means maximum number of logical cores. (default =0).  -v,--verbose N:INT in [0 - 3]                                  Write increasingly more output (default =1).  -q,--quiet                  Suppress output (same as --verbose=0).  -d,--debug N:INT in [0 - 3] Write more debug output to log files (default=0).  -V,--version               Prints version information.

Known Defects in CUBIT™ 15.8

The following items are the user-reported bugs fixed since the last release of CUBIT™. For more information contact Roshan Quadros (

Ref #Description
MESH-4647Changed the default smoothing timeout from 10 minutes to 30 seconds
Better performance when importing cub files
Better performance when merging curves in GUI
MESH-4444Blocks of dimension 0 and 1 not highlighting correctly
MESH-5031Fix meshing quartered sphere with polyhedron scheme.
MESH-4965Cubit selection monitor doesn’t list mesh elements
MESH-5056Consolidating excessive printouts to terminal on some operations (regularize and delete mesh)
MESH-5375Fix for crash in tolerant imprinting.

*The defects listed above are only those user-reported issues deemed “critical” or “blocker”. For information on other known defects contact Roshan Quadros.

Enhancements in CUBIT™ 15.8

The following items are the user-enhancements implemented in the release of release of CUBIT™. For more information contact Roshan Quadros (

Ref #Description
When importing a ACIS file (.sat/.sab) added ability for Cubit to read in generic attributes with name PTCName on bodies and volumes
connected_sets option added to remove surface command to allow for more robust surface removal
The collapse edge/tri/tet commands can take multiple ids.
Users can globally control the minimum edge length created during triangle meshing (trimesh scheme) with the command: [Set] Trimesher Minimum Size <val>
Higher order nodes taken into account when computing element volume metric for hexes and tets.
Surface meshing scheme ‘Hole’ now accepts negative bias, switching bias direction.
Performance and robustness increase when importing mesh-based geometry models containing many hardlines.

Limitations of CUBIT™ 15.8

Ref #Description
3433Superelement export not supported

Documentation Updates

The CUBIT 15.8 online documentation may be found here. Both a PDF version and a Microsoft Word version are also available for download. The CUBIT GUI installation also includes the full user documentation included with the program. The user’s manual may be accessed from the Help menu.

CUBIT™ 15.8 Contents of Release

CUBIT Program: The installation package includes executables and libraries, packaged in tar.gz files for Linux machines. For Windows, the package is in a self-installing executable, and for Mac OS X a .dmg file is provided. Both a command line and GUI version of CUBIT are included with the installation package for all platforms.

Documentation: Linux, Windows and Mac versions include full online documentation. Windows also includes .chm (Windows Help File), of the complete documentation that can be run separately from CUBIT.

Platforms Supported

CUBIT 15.8 supports the following Platforms:

  • Linux RedHat Enterprise 6 and 7
  • Windows 10, 8 and 7
  • macOS 10.11+

Non-Sandia Users

CUBIT is freely available for United States government use. For more information on licensing CUBIT, including academic, commercial, and all other use, go to our licensing page. For current CUBIT users, CUBIT 15.8 may be downloaded from the CUBIT download page.

Sandia Personnel Only
CUBIT 15.8 may be downloaded from the CUBIT download page.

  • Windows
    • Download a Windows installation file and double-click to install.
  • MAC OS X
    • Download a Mac OS X disk image file. After the disk image is opened, click and drag the Cubit folder to /Applications.
    • Check with your local LAN administrator for instructions on how to access CUBIT on your local LAN. In most cases typing one of the following commands at the UNIX prompt should allow you to execute CUBIT.  In some cases, the full path will need to be specified:
cubitThe latest released version (15.8) of CUBIT deployed to the LAN.
cubit -noguiThe latest released version (15.8) with just the Command Line and graphics window
cubit -nogui -nographicsThe latest released version (15.8) with just the Command Line
cubit-15.8Version 15.8 with GUI
cubit-betaThe latest beta version still in development

Contact Information

Cubit Help

For general technical questions including download, installation and Cubit technical assistance.

Cubit Licensing and Passwords


Cubit Support Lead

Trevor Hensley
Cubit Support Lead
Phone: 505-284-7756

Cubit Project Lead

Roshan Quadros
Sandia National Laboratories
Computational Simulation Infrastructure (org. 1543)
Phone: 505-844-0408

Sandia National Laboratories is a multi-mission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC., a wholly-owned subsidiary of Honeywell International, Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525. SAND2017-6996 W