*morphsmoothmorphbased
Uses a morphing based smoothing algorithm to smooth a mesh and improve element quality.
Syntax
*morphsmoothmorphbased d_entity_type d_mark_id f_entity_type f_mark_id iter quality_level fix_type fix_angle
Type
HyperMesh Tcl Modify
Description
This command will smooth any shell or solid element mesh, trying to improve the quality of the mesh while preserving the shape of the mesh. The smoothing of the mesh will be stored as a morph and thus can be undone, redone, or saved as part of a shape.
Two ways are provided to allow the user to fix nodes during the smoothing. The first is manual selection: any nodes on the node mark will be held fixed. The second is automatic selection via the fix_type option where you can select all nodes that lie on edges, faces, or feature lines and fix them all at once. All nodes selected using both methods will be fixed.
Inputs
- d_entity_type
- Valid values are domains and elems.
- d_mark_id
- The mark ID of the domains or elements to be smoothed. Valid values are 1 and 2.
- f_entity_type
- Valid values are nodes.
- f_mark_id
- The mark ID of the nodes to be held fixed. Valid values are 1 and 2.
- iter
- The number of smoothing iterations that will be performed on the mesh. A normal value is 50.
- quality_level
- The desired quality level you wish to attain. The higher the level, the more time
required to smooth the mesh.
- 1 - low quality, faster solving
- 2 - Balance between quality and solution speed
- 3 - High quality, slower solving
- fix_type
- Specifies which parts of the mesh should be automatically fixed in addition to any
fixed nodes. Nodes associated with morph constraints will automatically be fixed. For
best results, at least one node should be fixed using either this parameter or the mark
of fixed nodes.
- 0 - Nodes at handles (only when domains have been selected)
- 1 - Fix edge domains or any nodes around the edge of selected elements
- 2 - Fix nodes on feature edges
- 3 - Fix nodes on the faces of the domains or elements
- fix_angle
- If fix_type is 3, the feature angle for determining the feature lines must be provided. For all other fix types this value is ignored.
Examples
To smooth a 2D domain at a balanced quality level with only the edge domains around it fixed:
*createmark domains 1 9
*createmark nodes 1
*morphsmoothmorphbased domains 1 nodes 1 50 2 1 30
*createmark elements 1 "all"
*createmark nodes 1 6079 6080 6108 6112 6113 6114
*morphsmoothmorphbased elements 1 nodes 1 50 3 2 30
Errors
if { [ catch {command_name...} ] } {
# Handle error
}