*morphinterpolatesurf
Morphs a mesh on to a surface interpolated from the specified mark of nodes or lines.
Syntax
*morphinterpolatesurf n_entity_type n_mark_id e_entity_type e_mark_id sizbld buffer ndens mode plane node_id system_id line_list node_list sym con covar drift nugget nugval symm type draw offset sym_plane model_shape node1_id node2_id
Type
HyperMesh Tcl Modify
Description
This command will morph the elements on e_mark_id, or those of an internally generated mesh, to a surface interpolated from the nodes or lines on n_mark_id. The mode specifies the general shape of the interpolated surface (and internally generated mesh) and requires either a specified plane, line, node, node list, or system to orient the shape. This command may also be used to generate a surface using the interpolated surface but is limited to support only a plane as the general shape of the interpolated surface.
For a generated mesh the sizbld option can be used to specify the number of elements per side (for a rectangular mesh) or per 45 degree section (for a non-rectangular mesh), or it can be used to specify the average element size. For an existing mesh (e_mark_id) sizbld is the blend factor % which allows you to blend the difference between the shape of the existing mesh and the shape of the interpolated surface. A higher blend factor means that the mesh will match closer to the interpolated surface.
Covariance, drift, nugget, and nugget value are parameters sent to the Kriging algorithm which calculates the interpolated surface. Good default values are "h" for covariance, "linear" for drift, and "off" for the nugget.
Inputs
- n_entity_type
- Valid values are nodes and lines.
- n_mark_id
- The mark ID of the nodes or lines. Valid values are 1 and 2.
- e_entity_type
- Must be set to elems.
- e_mark_id
- The mark ID of the elements. Valid values are 1 and 2.
- sizbld
- If the element mark is empty:
- buffer
- % increase in the size of the generated mesh before morphing to interpolated surface (0.0 - 100.0) - intended mainly for planar meshes (modes 0 and 8)
- ndens
- Number of nodes created on lines for interpolated surface.
- mode
- Shape of generated mesh and general shape of interpolated surface:
- plane
- Temporary plane ID for orientation or cylinder axis (modes 0, 1 and 8)
- node_id
- ID of center node of sphere or ellipse (modes 2 and 3)
- system_id
- ID of local system for ellipse (mode 3)
- line_list
- Line list ID (modes 5 and 7)
- node_list
- Node list ID (modes 4, 5, 6, and 7)
- sym
- 0 – Do not use symmetry links
- con
- 0 – Do not use constraints
- covar
- Covariance for Kriging algorithm:
- drift
- Drift type for Kriging algorithm:
- nugget
- 0 – off
- nugval
- The value of nugget for Kriging algorithm.
- symm
- 0 – No symmetric surface is created (mode 8 only)
- type
- 0 – Smooth surface is created (mode 8 only)
- draw
- Draw depth used to position the surface below the part (mode 8 only)
- offset
- Used to increase the size of the surface while maintaining tangency (mode 8 only)
- sym_plane
- Temporary symmetry plane ID (mode 8 only)
- model_shape
- 0 – The surface is created using the half model given by symplane (mode 8 only)
- node1_id
- Base point of vector defining the developable direction (mode 8 only). Can be set to zero for other modes.
- node2_id
- End point of vector defining the developable direction (mode 8 only). Can be set to zero for other modes.
Examples
To morph a mesh to a surface interpolated from nodes which is roughly planar:
*createmark nodes 1 1 2 3 4 5 6 7 8
*createmark elems 1 "all"
*createplane 1,1.0 0.0 0.0 1.0 0.0 0.0
*createlist lines 1
*createlist nodes 1
*createplane 2,1.0 0.0 0.0 1.0 0.0 0.0
*morphinterpolatesurf nodes 1 elems 1 100.0 10.0 0 0 1 0 0 1 1 1 1 0 2 0 0.0 0 0 0.0 0.0 2 0 0 0
To generate a mesh, with 10 elements per 45 degree spherical section, and morph it to a surface interpolated from lines which is roughly spherical and oriented with a given system with a node as the origin:
*createmark lines 1 1 2 3 4 5 6 7 8
*createmark elems 1
*createplane 1,1.0 0.0 0.0 1.0 0.0 0.0
*createlist lines 1
*createlist nodes 1
*createplane 2,1.0 0.0 0.0 1.0 0.0 0.0
*morphinterpolatesurf nodes 1 elems 1 -10.0 10.0 10 2 1 45 3 1 1 1 1 0 2 0 0.0 0 0 0.0 0.0 2 0 0 0
Errors
if { [ catch {command_name...} ] } {
# Handle error
}
Version History
10.0