New Coreform Trelis Features

Meshing

Finding intersection of 2D and 3D meshes

Finding mesh intersections has been improved to also support finding 3D intersections. Additionally, blocks may be specified when finding mesh intersections. Higher order elements also have their higher order nodes included in the intersection checks. The below image is an example of 3D intersection while also rendering the amount of intersection between elements and printing summary information.

Find Mesh Intersection {Block|Body|Surface|Volume} [with {Block|Body|Surface|Volume} ] [low <value=0.0001>] [high ] [exhaustive] [worst ] [draw] [log]</value=0.0001>

Autoscheme and interval assignment more robust

Algorithms for ensuring hexahedral meshes fit into volumes from a topological point of view have been improved. This includes improvements to autoscheme, corner picking, and interval assignment have been made more reliable and congruent with user expectations. This includes respecting user assigned intervals on curves, and user assigned schemes on volumes.

Tri meshing overconstrained options

A new option for handling overconstrained edges during tri meshing is available. During triangle meshing of surfaces, overconstrained edges can created where edge nodes are associated with the surface’s bounding curves. This option may be useful if also setting proximity to attain a number of elements through a thickness and overconstrained edges exist. By splitting these overconstrained edges, one can attain a number of elements through a thickness. To split these edges, the following option may be used.

[set] Trimesher Split Overconstrained Edges {on|OFF}

The figure below illustrates how splitting overconstrained edges would be to attain more elements through a thickness.

Tet meshing overconstrained options

A new option for handling overconstrained edges and tetrahedra during tet meshing is available. During tet meshing of volumes, overconstrained edges and tetrahedra can created where nodes are associated with the volume’s bounding surfaces. To split these edges or tetrahedra, the following option may be used.

[set] Tetmesher Optimize [ Overconstrained Edges {on|OFF} ] [ Overconstrained Tetrahedra {on|OFF} ]

QTri a set of elements

In addition to splitting all quadrialaterals of a surface with the QTri command, a subset of quadrilaterals can now be split. A subset of quadrilateral may be split using the Faces option of the QTri command.

QTri { Surface | Face ]

The following image illustrates the result when doing a QTri operation on faces.

Sculpt

Sculpt meshing method

Sculpt is a separate parallel application designed to generate all-hex meshes on complex geometries with little or no user interaction. Sculpt was previously available as a standalone app called Bolt, but is now available as another meshing method in Trelis. Trelis provides a front end command line and GUI for the Sculpt application. The command will build the appropriate input files based on the current geometry and can also automatically invoke Sculpt to generate the mesh and bring the mesh back to Trelis. The following command can be used to invoke the Sculpt application.

sculpt parallel <options>

In addition, options for Sculpt can be set up in the new Sculpt command panel: Mesh > Volume > Parallel Sculpt. Complete documentation on the Sculpt Parallel options are included in the Trelis User’s Manual.

Sculpt refinement and non-manifolds

A new option for handling non-manifold conditions created during refinement is available. The adapt_non_manifold option can be used in situations where refinement results in a non-manifold condition at a node. If enabled, cells surrounding the non-manifold condition will be included in refinement. This typically results in a closer match to the geometry for thin and small features, and will normally result in more elements at material interfaces. Note that non-manifold conditions will be resolved without this option, however, the result may not match geometry as accurately.

Periodicity check

A new option for checking periodicity on the Sculpt mesh is available. When using the periodic option with a Cartesian base grid, the input geometry must be periodic with respect to the grid bounding box in order to meet the minimum requirements of a valid periodic mesh. The check_periodic option can be used to check whether the requirement is met. The check_periodic_tol option is also available to set the tolerance for checking periodicity.

Parallel unstructured input mesh

Sculpt now accepts unstructured meshes in parallel. To provide parallel mesh as input, the mesh needs to be decomposed prior to running Sculpt. The SEACAS decomp tool can be used to split an exodus mesh into multiple files. Once decomposed, the root filename is used with the input_mesh argument.

Mesh decomposed into four parallel exodus meshes processed by Sculpt in parallel.

Pamgen input

A new option of using Pamgen to create a base mesh for Sculpt is available. Pamgen is an open source meshing tool for generating hexahedral meshes from geometric primitives. The input_mesh_pamgen Sculpt option may be set to a filename containing Pamgen input. Pamgen also supports generating parallel meshes. An example Pamgen input with an associated image showing the mesh is below.

  • mesh
    • radial trisection
      • trisection blocks, 2
      • zmin -0.00075
      • numz 1
        • zblock 1 1. interval 8
      • numr 3
        • rblock 1 2.0 interval 8
        • rblock 2 3.0 interval 8
        • rblock 3 4.0 interval 8
      • numa 1
        • ablock 1 90. interval 24
    • end
    • set assign
      • nodeset, ilo, 100
      • block sideset, ihi, 45, 2
    • end
  • end

Base mesh generated by Pamgen using the above input parameters. Colors represent 4 different processors when used in parallel mode.

Geometry

Names on bodies after STEP import

files are not read in. To read those names, the following command is used.

Command: [set] Read Step Body Names [on|OFF]

Improvements with element block propagation through webcuts

Blocks specification persist through webcut operations. For instance, a volume associated with a block can be split into two volumes with the webcut command, and the result will be a block containing both volumes. In this release, an improvement was made such that webcuts with conical or cylindrical surfaces will also follow this behavior.

Graphics, Utilities, etc.

Python 2 and Python 3 support

Cubit now supports either Python 2 or Python 3. The user may select the version of Python to use. Having support for both versions will assist transitioning from Python 2 to Python 3. Note, Python 2.7 will not be maintained by Python developers past January 1, 2020.

Release Notes

Click on the Coreform Trelis version to expand the list.

Coreform Trelis 17.0
Issue Description
[SM-63] Block names not read correctly from STEP import
[SM-170] Drawing node color incorrect
[SM-254] Curve in vertex with length is broken
[SM-261] Refine Volume fails with imprinted vertex
[SM-294] Import Export Problem with Trelis
[SM-373] Reversed surface will not mesh
[SM-408] BC creation on mesh entities
[SM-709] Mesh Scaling for Tets
[SM-847] Trimesh of composited surface produces bad mesh
[SM-889] QT5 gui issue – QOpenGLContext messages over VNC
[SM-910] Issuing incorrect quality metric defaults to shape
[SM-938] Duplicate surface meshing output
[SM-945] Poor curve biasing with volume and vertex sizing
[SM-1023] Implement image generation in Trelis journal/Python batch modes
[SM-1339] Cylindrical webcut after block operation not placing new volume in block
[SM-1560] Python 3 in Trelis
[SM-1574] MBG Export GUI panel is wrong
[SM-1679] Add Abaqus import path
[SM-2017] Slowdown of Boolean unite operations
[SM-2130] Triangle quality metric
[SM-2238] Nodes not written to mesh files
[SM-2317] Misplaced nodes after meshing with surface interval only
[SM-2335] BC creation on mesh entities
[SM-2395] Support Python 3 and Python 2
[SM-2416] Unite volume with Tetprimative produce error messages but mesh looks fine
[SM-2488] Surfaces unmerged when writing to a cub file
[SM-2725] Meshing threads bug
[SM-2769] Skin individual only works for free mesh
[SM-2822] Improved control over clipping plane
[SM-2916] Can’t draw tets attached to sheet body
[SM-3027] Sphere and torus not displaying in wireframe and hidden mode in Windows and mac
[SM-3052] Improve View Point names
[SM-3085] Move-node won’t work if not constrained
[SM-3348] Warning – nodes not exported
[SM-3440] Import Trelis block behavior
[SM-3486] Cub file opens incorrectly
[SM-3575] Remove KCM from Builds
[SM-3577] Change order of Select method in Geometry > Volume > Transform > Move
[SM-3606] Trelis Compare Tool
[SM-3616] Align by axis but keep axial coordinate the same
[SM-3617] Quality file on a lite mesh will crash
[SM-3618] CRASH – quotation marks
[SM-3644] Parameters for the circle scheme available in the Properties Page
[SM-3649] What does Warning (1005200) mean?
[SM-3652] Tools > Options … > Label Defaults > not working
[SM-3708] Map scheme changes to pave causing volume not to mesh
[SM-3712] Skip target interval matching bug
[SM-3713] CRASH – setting curve intervals in the property page
[SM-3714] Clip plane cannot be moved to the origin
[SM-3716] CRASH – deleting vol in group crashes if group selected in tree
[SM-3721] Mouse bindings reset every time I open Trelis
[SM-3722] Lost Block Attributes and Attribute Names When Saving .cub File
[SM-3723] Group Gui bug report
[SM-3749] Python 3 support
[SM-3750] Python 3 request
[SM-3754] Draw block all thickness offset in 15.4 not working as it did in 15.3
[SM-3784] QTri to work on faces
[SM-3786] Deleting block options are removed
[SM-3787] Geometry > Volume > Modify > Heal shows Body only
[SM-3788] Geometry Power Tool shows Body only
[SM-3861] Middle mouse in command panel
[SM-3863] Sizing on sphere not respected
[SM-3896] Strange tet mesh on test problem
[SM-3897] Help Using Sculpt
[SM-3898] Sculpt giving negative scaled Jacobian
[SM-3904] Crash with vertex labels
[SM-3933] Curve > move option is missing from GUI
[SM-4020] Surface and volume select issues
[SM-4026] Block option missing from import mesh geometry advanced option
[SM-4032] Trelis won’t delete files
[SM-4033] Provide the name of the color on Property Page > General > Color
[SM-4047] Axis Preview syntax error in axis align
[SM-4048] CRASH – ‘feature size’ on curves will crash Trelis
[SM-4049] Surface Mesh schemes do not match between Properties Page and Command Panel (some missing)
[SM-4050] Feature Size required in Command Panel > Mesh > Curve > Mesh
[SM-4052] CRASH: Trelis Segfault during surface meshing
[SM-4057] get_global_element_id example wrong in manual
[SM-4059] Removal of timestamp in qa_records
[SM-4070] Groups inadvertently created in ‘copy mesh’ command
[SM-4072] Trelis startup files on Mac
[SM-4075] ERROR: The Interval Matching solver failed to find a valid solution, but thought it succeeded.
[SM-4077] Trelis server selection monitor not responding correctly to ‘no selection’
[SM-4081] Hide Spider Blocks in Trelis
[SM-4100] Export exodus adds a .sat file extension
[SM-4109] Property Page Metadata missing
[SM-1160] Add fresh sculpt screen shots – like bolt
[SM-1161] Add tutorial for new command panel features
[SM-1144] Prepare Trelis for release
[SM-1081] Curve and surface not biased when setting size on vertex (tri/tet meshing)
[SM-1084] Stitch panel uses wrong entity type in the command
[SM-1132] ‘logfile’ option on heal dialog does nothing
[SM-1133] Healer command logfile option doesn’t write to .log file.
[SM-1136] Location Distance From and Midpoint dont issue a command from Location on Curve dialog
[SM-1142] Label on | off doesn’t work for volumes
[SM-1143] Mesh Label Defaults aren’t saved in the Options panel
[SM-23] OpenFOAM Support
[SM-1067] Add functions to CubitInterface to get material name/id from a block
[SM-1093] Align axes of surfaces
[SM-762] Upgrade ACIS to r26 and Translators
[SM-962] Upgrade to Python 3
[SM-1108] Sweep–Extrude default has Redistribute Nodes turned on
[SM-1116] Change the Tree BC from ‘Periodics’ to ‘Periodic’
[SM-1117] Missing “block” option in ANSYS export command created by GUI
[SM-1145] Merge Sandia branch
[SM-1152] Integrate Sculpt components
[SM-1153] Enable sculpt only for Pro version
[SM-1154] Implement MPI assistant in the tools/options
[SM-1155] Add warning dialog if too many elements will be generated
[SM-1156] Protect sculpt.exe with rlm
[SM-1157] Protect sculpt parsing command with licensing
[SM-1158] Add sculpt docs into help