*midsurfmesh

Creates a mesh on the mid-surface, with optional cleanup steps and mesh thickness assignment.

Syntax

*midsurfmesh entity_type mark_id string_array number_of_strings criteria_file param_file

Type

HyperMesh Tcl Modify Command

Description

This command creates a mesh on the mid-surface extracted from a solid body. The mesh is created using the BatchMesher approach, with optional application of geometry and elements cleanup steps. The command also optionally assigns thickness to the created mesh.

The mid-surface must already exist, and must be organized in a component with the name "Middle Surface". The mesh is applied only to surfaces in this component.

The parameters controlling mesh creation are set using specified criteria and parameters file, or can be set using flexible string input.

The assignment of thickness is available only through the string input. The thickness assignment is supported for the following user profiles:

Abaqus, LS-DYNA, Nastran, OptiStruct, Radioss

Inputs

entity_type
The type of input geometry to use when assigning thickness. Valid values are surfaces and solids. This is ignored, if thickness assignment is not requested.
mark_id
The ID of the mark containing the input geometry for thickness calculations. Valid values are 1 and 2.
string_array
The ID of the string array that contains the additional input parameters. The string array is created using the *createstringarray command. This should always be set to 1.
The optional input parameters can be grouped arbitrarily in any order. Each string may comprise input for any number of the parameters.
The data for each input parameter consists of a predefined parameter keyword and the parameter value, separated by space characters and/or the equality symbol:
parameter_keyword = parameter_value
or
parameter_keyword parameter_value
The supported input parameters grouped by type are as below.
Mesh and geometry cleanup parameters (auto-generation):
elem_size
The mesh element size. If a positive value is given, then the criteria_file and param_file arguments are ignored. The criteria and parameters are auto-generated inside the command using default values adjusted to the given element size.
The remaining mesh and geometry cleanup parameters have effect only if elem_size is given and has a valid value. They are used for tuning the auto-generation.
elem_type
0 - trias
1 - quads
2 - mixed (default)
elem_order
1 - First order (default)
2 - Second order
min_elem_size
The minimum element size used for auto-generated criteria. Default value is 0.3*elem_size.
max_elem_size
The maximum element size used for auto-generated criteria. Default value is 1.75*elem_size.
elem_feature_angle
The element feature angle, in degrees, used for detection of features in post-mesh smoothing and cleanup. Default value is 25.0.
no_geomcleanup
0 - Apply geometry cleanup (default)
1 - Do not apply geometry cleanup
no_node_move_across_edges
0 - Nodes are allowed to move across non-feature geometry edges in post-mesh smoothing and cleanup (default)
1 - Nodes are not allowed to move off geometry edges
no_remove_holes
0 - Small holes are removed during geometry cleanup (default). The default hole diameter for removal is the maximum of 0.4*elem_size and 0.8*min_elem_size.
1 - Do not remove small holes
no_seed_holes
0 - Seed holes with fixed points in geometry cleanup (default)
1 - Do not seed holes
do_washer
0 - Do not create washers around holes (default)
1 - Create washers around holes
Handling of existing elements associated with surfaces in the "Middle Surface" component:
keep_midsurf_elems
0 - Delete existing elements
1 - For completely meshed connected surfaces, the mesh is kept. Partially meshed connected surfaces are remeshed (default).
2 - All existing elements are kept. This may result in a break in connectivity of the mesh.
Thickness assignment:
thickness_mode
0 - Do not assign thickness (default)
1 - Assign thickness
thickness_min
The minimum thickness to use. Ignored if thickness_mode is 0, if omitted, or if provided as 0.0.
thickness_max
The maximum thickness to use. Ignored if thickness_mode is 0, if omitted, or if provided as 0.0.
number_of_strings
Integer indicating the size (number of strings) in the string array created using *createstringarray.
criteria_file
The full path and file name of the element quality criteria file to use. If the criteria are set by a preceding command, "dummy" should be used as the file name.
This is ignored, if the criteria and parameter auto-generation mode is set in the string input.
param_file
The full path and file name of the geometry cleanup parameters file to use. If the parameters are set by a preceding command, "dummy" should be used as the file name.
This is ignored, if the criteria and parameter auto-generation mode is set in the string input.

Examples

To mesh a mid-surface using element quality criteria C:/crit/10mm.criteria and cleanup parameters file C:/crit/10mm.param, with no additional input parameters:

*midsurfmesh solids 1 1 0 "C:/crit/10mm.criteria" "C:/crit/10mm.param"

To mesh a mid-surface using element quality criteria C:/crit/10mm.criteria and cleanup parameters file C:/crit/10mm.param, with element thickness assignment using all solid geometry (no limits on the minimum and maximum thickness):

*createmark solids 1 all
*createstringarray 1 "thickness_mode = 1"
*midsurfmesh solids 1 1 1 "C:/crit/10mm.criteria" "C:/crit/10mm.param"

The same as the previous example, but using elements quality criteria explicitly preset:

*createstringarray 14 \
" 0 penalty value      0.00    0.00    0.80    1.00   10.00" \
" 1 min length        1 1.0   3.000   2.749   1.502   1.000   0.749  1" \
" 2 max length        1 1.0   3.000   3.600   4.500   6.000   9.000  0" \
" 3 aspect ratio      1 1.0   1.000   2.000   4.400   5.000  10.000  0" \
" 4 warpage           1 1.0   0.000   5.000  13.000  15.000  30.000  0" \
" 5 max angle quad    1 1.0  90.000 110.000 134.000 140.000 160.000  0" \
" 6 min angle quad    1 1.0  90.000  70.000  46.000  40.000  20.000  0" \
" 7 max angle tria    1 1.0  60.000  80.000 112.000 120.000 150.000  0" \
" 8 min angle tria    1 1.0  60.000  50.000  34.000  30.000  15.000  0" \
" 9 skew              1 1.0   0.000  10.000  34.000  40.000  70.000  0" \
"10 jacobian          1 1.0   1.000   0.900   0.700   0.600   0.300  0" \
"11 chordal dev       0 1.0   0.000   0.300   0.800   1.000   2.000  0" \
"12 taper             1 1.0   0.000   0.200   0.500   0.600   0.900  0" \
"13 % of trias        1 1.0   0.000   6.000  10.000  15.000  20.000  0"
*setqualitycriteria 1 14 0
*createmark solids 1 all
*createstringarray 1 "thickness_mode = 1"
*midsurfmesh solids 1 1 1 "dummy" "C:/crit/10mm.param"

To mesh a mid-surface with element size 12.0 (mixed elements type) using auto-generated element quality criteria and cleanup parameters, a minimum element size of 5.0, an elements feature angle of 15.0, and assigning element thickness using all solid geometry (no limits on the minimum and maximum thickness):

*createmark solids 1 all
*createstringarray 3 "elem_size = 12.0 min_elem_size = 5.0" "elem_feature_angle = 15.0" "thickness_mode = 1"
*midsurfmesh solids 1 1 3 "dummy" "dummy"

Errors

Incorrect usage results in a Tcl error. To detect errors, you can use the catch command:
if { [ catch {command_name...} ] } {
   # Handle error
}

Version History

11.0.130

2020 - This command is now supported for global history. save_model is deprecated and all values do not save a backup model, but will allow undo/redo.