INTERPOLATED_MOTION_SURFACE
Specifies a surface that is used to scale displacements of mesh nodes.
Type
AcuSolve Command
Syntax
INTERPOLATED_MOTION_SURFACE ("name") {parameters...}
Qualifier
User-given name.
Parameters
- shape (enumerated) [no default]
- Shape of the surfaces in this set.
- three_node_triangle or tri3
- Three-node triangle.
- four_node_quad or quad4
- Four-node quadrilateral
- six_node_triangle or tri6
- Six-node triangle.
- element_set or elem_set (string) [no default]
- User-given name of the parent element set.
- surfaces (array) [no default]
- List of element faces.
- surface_sets (list) [={}]
- List of surface set names (strings) to use in this command. When using this option, the connectivity, shape, and parent element of the surfaces are provided by the surface set container and it is unnecessary to specify the shape, element_set and surfaces parameters directly to the INTERPOLATED_MOTION_SURFACE command. This option is used in place of directly specifying these parameters. In the event that both of the surface_sets and surfaces parameters are provided, the full collection of surface elements is read and a warning message is issued. The surface_sets option is the preferred method to specify the surface elements. This option provides support for mixed element topologies and simplifies pre-processing and post-processing.
- type (enumerated) [=faceted]
- Type of the interpolated motion surface.
- faceted
- Interpolated motion surface is made up of the discrete points and faces contained within the input surfaces.
Description
MESH_MOTION( "vibrating cylinder" ) {
type = rigid_body_dynamic
rigid_body_center = { 0.05, 0.05, 0.00125; }
rigid_body_mass = 2.35619449e-007
rigid_body_stiffness = { 0.000654446111, 5.2355689e-005, 0.0, 0.0, 0.0, 0.0; }
rigid_body_surface_outputs = { "cylinder surface" }
}
MESH_MOTION( "Interpolated Motion" ) {
type = interpolated_motion
interpolated_motion_surfaces = { "cylinder surface", "box walls"}
}
INTERPOLATED_MOTION_SURFACE( "cylinder surface" ) {
surfaces = Read( "MESH.DIR/cylinder_surface.ebc" )
shape = four_node_quad
element_set = "Air"
type = faceted
}
INTERPOLATED_MOTION_SURFACE( "box walls" ) {
surfaces = Read( "MESH.DIR/box_walls.ebc" )
shape = four_node_quad
element_set = "Air"
type = faceted
}
ELEMENT_SET( "Air" ) {
...
mesh_motion = "Interpolated Motion"
mesh_motion_precedence = 1
...
}
- Element Shape
- Surface Shape
- four_node_tet
- three_node_triangle
- five_node_pyramid
- three_node_triangle
- five_node_pyramid
- four_node_quad
- six_node_wedge
- three_node_triangle
- six_node_wedge
- four_node_quad
- eight_node_brick
- four_node_quad
- ten_node_tet
- six_node_triangle
The surfaces parameter contains the faces of the element set. This parameter is a multi-column array. The number of columns depends on the shape of the surface. For three_node_triangle, this parameter has five columns, corresponding to the element number (of the parent element set), a unique (within this set) surface number, and the three nodes of the element face. For four_node_quad, surfaces has six columns, corresponding to the element number, a surface number, and the four nodes of the element face. For six_node_triangle, surfaces has eight columns, corresponding to the element number, a surface number, and the six nodes of the element face. One row per surface must be given. The three, four, or six nodes of the surface may be in any arbitrary order, since they are reordered internally based on the parent element definition.
4 41 2 5 6
5 51 5 6 3
INTERPOLATED_MOTION_SURFACE( "walls" ) {
shape = three_node_triangle
element_set = "flow_elements"
surfaces = Read( "region_surface.ebc" )
...
}
SURFACE_SET( "tri faces" ) {
surfaces = { 1, 1, 1, 2, 4 ;
2, 2, 3, 4, 6 ;
3, 3, 5, 6, 8 ; }
shape = three_node_triangle
volume_set = "tetrahedra"
}
SURFACE_SET( "quad faces" ) {
surfaces = { 1, 1, 1, 2, 4, 9 ;
2, 2, 3, 4, 6, 12 ;
3, 3, 5, 6, 8, 15 ; }
shape = four_node_quad
volume_set = "prisms"
INTERPOLATED_MOTION_SURFACE ( "walls" ) {
surface_sets = {"tri_faces", "quad_faces"}
...
}
tri faces
quad faces
and read using:
INTERPOLATED_MOTION_SURFACE ( "walls" ) {
surface_sets = Read("surface_sets.srfst")
...
}
The mixed topology version of the INTERPOLATED_MOTION_SURFACE command is preferred. This version provides support for multiple element topologies within a single instance of the command and simplifies pre-processing and post-processing. In the event that both the surface_sets and surfaces parameters are provided in the same instance of the command, the full collection of surface elements is read and a warning message is issued. Although the single and mixed topology formats of the commands can be combined, it is strongly recommended that they are not.