*morphnodesextendedoffset
Moves the selected nodes to a mark of extended surfaces or elements while morphing the affected elements.
Syntax
*morphnodesextendedoffset m_entity_type m_mark_id e_entity_type e_mark_id f_entity_type f_mark_id t_entity_type t_mark_id nproj c_vec integ mbias fbias envelope undisplayed offset
Type
HyperMesh Tcl Modify Command
Description
This command will move the selected nodes to extended surfaces or elements either normal to the surfaces or elements, along a vector, or normal to the elements attached to the nodes. The fixed nodes are held in place and the affected elements (or all unfixed nodes in the model if integ is 3, 6 or 7) are stretched according to the value of integ.
- If integ is 0, a general domain is temporarily created for the affected elements. If integ is 1, the domains currently in the model are used.
- If integ is 2, 1D, 2D, 3D, and edge domains are temporarily created for the affected elements but the 2D domains are not partitioned.
- If integ is 3 then handle influences are applied using a spatial relationship rather than through a domain.
- If integ is 4, only the selected moving nodes are moved and all others are held fixed.
- If integ is 5, 1D, 2D, 3D, and edge domains are temporarily created for the affected elements and the 2D domains are partitioned. Any handles created due to partitioning are moved based on their distance from the moving and fixed nodes.
- If integ is 6, then handle influences are applied using the Kriging algorithm.
- If integ is 7, then handle influences extend only up to a given distance (if envelope is positive) or a given multiple of the applied perturbations (if envelope is negative) away from the moving nodes.
The bias factors function as they would for handles except that all moving nodes will have the mbias value and all fixed nodes will have the fbias value.
If no elements are selected and nproj is 2, 5 or 6, all elements in the model are used to determine projection vectors.
If integ is set to 3, 6, or 7, nodes on undisplayed elements and components can be morphed, fixed, or excluded depending on the value of undisplayed.
If offset is non-zero, the moving nodes will be offset from the extended surfaces or elements by the specified amount.
Inputs
- m_entity_type
- Must be set to nodes.
- m_mark_id
- The ID of the mark containing the moving nodes. Valid values are 1 and 2.
- e_entity_type
- Must be set to elems.
- e_mark_id
- The ID of the mark containing the affected elements. Valid values are 1 and 2.
- f_entity_type
- Must be set to nodes.
- f_mark_id
- The mark ID of the fixed nodes. Valid values are 1 and 2.
- t_entity_type
- The type of entity to map to. Valid values are surfs and elems.
- f_mark_id
- The mark ID of the fixed nodes. Valid values are 1 and 2.
- t_entity_type
- The type of entity to map to. Valid values are surfs and elems.
- t_mark_id
- The ID of the mark containing the entities to map to. Valid values are 1 and 2.
- nproj
- 0 or 10 - Project along c_vec
- c_vec
- The ID of vector created using *createvector for the projection direction (nproj=0). Must be set to 1.
- integ
- 0 - Free edges (a single general domain)
- mbias
- Bias factor for moving nodes on affected elements.
- fbias
- Bias factor for fixed nodes on affected elements.
- envelope
- If positive, all nodes beyond the given distance away from the moving nodes will be fixed.
- undisplayed
- If integ is set to 3, 6, or 7, nodes which are not displayed can be affected by the morphing. This defines how undisplayed nodes are handled:
- offset
- The distance to offset nodes from the target.
Example
*createmark nodes 1 11 12 13
*createmark elems 1 1-100
*createmark nodes 2 21 22 23
*createmark elems 2 101-200
*createvector 1 1.0 0.0 0.0
*morphnodesextendedoffset nodes 1 elems 1 nodes 2 elems 2 0 1 1 1.0 1.0 0.0 0 1.2
Errors
if { [ catch {command_name...} ] } {
# Handle error
}