Cubit® 16.18 Release Notes

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® 16.18

Index of New Features

Meshing

  • Improved robustness while meshing with background Exodus sizing
  • Lower bound interval setting now respected when triangle meshing
  • New sizing option for tetmesh respect

Geometry

  • New command to create a frustum fit to a volume
  • Enhanced command to create a cylinder fit a volume
  • New options to specify an axis
  • Additional use cases supported with surface slot reductions
  • Export Patch Data command

Miscellaneous

  • Error detection when writing large .cub files
  • Corrections in ABAQUS file export for mixed meshes
  • Python 3.9 now included in distribution
  • Tab indented Python scripts now supported
  • New CubitInterface function get_nearby_entities

Meshing

Improved robustness while meshing with background Exodus sizing

The accuracy of sizes in resulting meshes is now improved by correcting an issue with associating sizing information from a background Exodus mesh to the resulting mesh.

For more information see: Exodus 2 Field Function

Lower bound interval setting now respected when triangle meshing

When triangle meshing it is now possible to use the lower bound interval setting to ensure a minimum number of elements along a curve. Previously, this setting was only effective when doing quadrilateral meshing.

For more information see: Interval Constraints

New sizing option for tetmesh respect

When adding a node to be respected for tet meshing, it is now possible to specify a size with that node. When given a size, the resulting tets surrounding that node will have a size matching the user supplied size. This may be useful when wanting refinement at certain locations within a tet mesh.

For more information see: Tetmesh

Geometry

New command to create a frustum fit to a volume

[Create] Frustum Volume   [axis]

The above command creates a frustum that tightly fits the input volume. The axis of the frustum is automatically computed. In most cases it will be correct but in complicated cases that are not correct, users can guide the creation by supplying the optional axis parameter.

Bounding frustum created for a volume
Bounding frustum created for a volume

For more information see: Creating Frustums

Enhanced command to create a cylinder fit a volume

[Create] Cylinder Volume   [axis]

The previous version of the command required the input volume to contain cylindrical or circular features to guide the cylinder creation. This is no longer required. Additionally, an optional axis parameter has been added to guide the cylinder creation in the even an incorrect axis is computed.

Bounding cylinder created for a spring volume
Bounding cylinder created for a spring volume

For more information see: Creating Cylinders

New options to specify an axis

Now curves can be specified to define an axis. An axis can be defined from curves of type arc or helix. Additionally, curves of type spline with a constant curvature can define an axis.

An 'axis' can now be selected via an arc, helix, or spline curve with constant radius
An ‘axis’ can now be selected via an arc, helix, or spline curve with constant radius

For more information see: Specifying an Axis

Additional use cases supported with surface slot reductions

The reduce surface slot capability has been improved to handle more use cases. This includes a more robust way to determine surface splitting locations, the ability to split across surfaces thicker than the specified radius, and the ability to split non-planar surfaces, such as conical surfaces. A method to find split locations based on constant width regions of a surface has been deprecated and removed.

For more information see: Reduce Slot Surface

Export Patch Data command

The Export Patch Data command is introduced to assist users in saving or previewing data from the reduce bolt patch process, commonly utilized in structural dynamics (SD) for specifying contact instead of fasteners in modal simulations. This command supports the generation of data for Morph input decks or simulation purposes, including the creation of a .csv file.

Export Patch Data  [{csv|morph|BOTH}] [surface ] [lower name ] [upper name ]
[sideset_naming_convention ] [full] [overwrite]

This command allows for the specification of output format. By default, both CSV and Morph input data are written to a file. Selecting csv generates only a CSV file, including a header with named patch surfaces listed as pairs, the distance between these pairs, and the x-y-z coordinates of the contact pairs’ center. Choosing morph outputs only the Morph input data, containing essential information for the Morph tet meshing tool.

For more information see: Reduce Bolt Patch

Miscellaneous

Error detection when writing large .cub files

Cubit (.cub) files have a 4GB addressing limitation and Cubit® will now detect on attempt to write out files exceeding this limit. When this limit is detected, an error is printed out. This will help users know that their file is unreadable.

For more information see: Saving Cubit® Sessions

Corrections in Abaqus file export for mixed meshes

Cubit® now exports a corrected Abaqus file when writing mixed meshes. When writing both hexes and tets to a file, the id numbering for elements could be reset to 1 part way through the file. Cubit® now gives the correct id to elements in a mixed mesh.

For more information see: Exporting Abaqus Files

Python 3.9 now included in distribution

While Cubit® is compatible with multiple versions of Python 3, the version of Python included within the distribution is now Python 3.9. This replaces the previous version of 3.7. 3.9 was chosen to remain compatible with minimum operating system versions.

Tab indented Python scripts now supported

When a Python script contains tab indentation as opposed to indenting with spaces, Cubit® can now process the script correctly. This means Cubit® can now handle those files the same as if the Python interpreter was used to process those files.

New CubitInterface function get_nearby_entities

This new function, available through the Cubit® Python interface, allows a user to get the list of nearby entities of type curve, surface or volume. For example, given a volume, find all the volumes that are closer than a specified distance.

For more information see: Cubit® Python API

Defects Fixed in Cubit® 16.18

  • MESH-6717 Quad aspect ratio is wrong for convex quads
  • MESH-7130 Right-click ‘select chamfer chains’ taking too long
  • MESH-7307 Webcut with general plane case not working
  • MESH-7311 Diagnose Geometry tab doesn’t consider sheet bodies
  • MESH-7453 gui gives incorrect command for sweep surface with target plane
  • MESH-7467 Holes not completely identified
  • MESH-7472 Python loop issue, cut & paste script works, but running it doesn’t
  • MESH-7886 Make Cubit/Python in GUI put focus back in command tab
  • MESH-7928 Transform mesh input translate with negative direction doesn’t work
  • MESH-7933 Unexpected behavior in cubit.set_element_variable in Cubit Beta
  • MESH-7941 Paving break-out every time
  • MESH-7959 Logging and CubitMessage::print_debug
  • MESH-7960 Not saving graphics tolerance between sessions
  • MESH-7967 Element variables not correct
  • MESH-7972 Fix finding missing curve overlap of nearly linear spline curves
  • MESH-7974 Edge case abaqus export problem
  • MESH-7994 Exodus sizing function not working with pave scheme
  • MESH-7995 Cubit unable to process a python file
  • MESH-7997 Lower bound intervals not respected on trimesh
  • MESH-8018 Sweeping having trouble with reversals
  • MESH-8035 Cubit® and VTK/Conda environment issue
  • MESH-8042 Remove mesh intersection crashes with a free mesh
  • MESH-8049 Odd Behavior with fillets and selecting surfaces
  • MESH-8056 Aprepro bug
  • MESH-8072 Reduce bolt not finding bottom volume correctly
  • MESH-8074 Add check to prevent cub files going over 4GB and becoming corrupted
  • MESH-8175 Edge swapping not working on higher order elements (tri6/7s)
  • MESH-8182 Use hardcopy command in a python script to find bad mesh or geometry
  • MESH-8206 Graph linew regression
  • MESH-8205 Standalone aprepro from seacas installation gives an error about FileExist.

Removal of Capabilities in Future Cubit® 17.02 Release

Our next release of Cubit® will be a major release and come with upgraded versions of ACIS and MeshGems. This will require the removal of two capabilities in Cubit®:

  • The new version of ACIS will come with a new and improved healing workflow. Commands in Cubit® 17.02 starting with the “healer” keyword will be modified to use this new workflow. Some commands may work differently than before, and others may be removed or replaced with alternatives.
  • The upgraded version of MeshGems will no longer support the macOS operating system, so Cubit® 17.02 will not support macOS. We are investigating options to continue macOS support for future Cubit® versions beyond 17.02. Cubit® 16.18 will remain available for download after the 17.02 release for customers still wanting to use Cubit® on macOS.

Documentation Updates

The Cubit® 16.18 online documentation may be found here. A PDF version is 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® 16.18 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 macOS 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.

Platforms Supported

Cubit® 16.18 supports the following Platforms:

  • Linux RedHat Enterprise 7 and 8
  • Windows 10 and 11
  • macOS 10.14+

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® 16.18 may be downloaded from the Cubit® download page.

Sandia Personnel Only

Cubit® 16.18 may be downloaded from the Cubit® download page.

Windows

Download a Windows installation file and double-click to install.

macOS

Download a macOS disk image file. After the disk image is opened, click and drag the Cubit® folder to /Applications.

Linux LANs

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:

/projects/cubit/<cubit_command>
cubitThe latest released version (16.18) of Cubit® deployed to the LAN.
cubit -noguiThe latest released version (16.18) with just the Command Line and graphics window
cubit -nogui -nographicsThe latest released version (16.18) with just the Command Line
cubit-16.18Version 16.18 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-help@sandia.gov

Cubit® Licensing and Passwords

Email: asc-approvals@sandia.gov

Cubit® Support Lead

Trevor Hensley
Phone: 505-844-3304
Email: cubit-help@sandia.gov

Cubit® Project Lead

Ryan Viertel
Email: rvierte@sandia.gov