PARTICLE_SURFACE
Specifies a surface for particle tracking.
Type
AcuSolve Command
Syntax
PARTICLE_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 surfaces.
- type (enumerated) [=wall]
- Type of the boundary surface.
- wall
- Impenetrable wall.
- inflow or in
- Inflow surface. Currently not used..
- outflow or out
- Outflow surface. Currently not used.
Description
This command specifies the surfaces (element faces) that comprise a particular kind of surface for particle tracking. Currently particle tracking is done as part of a post-processing module. The only type supported is wall, which is used by the particle tracker to prevent particles from penetrating the given surface. It is not necessary to use a PARTICLE_SURFACE command for surfaces specified in a SIMPLE_BOUNDARY_CONDITION command with type = wall, type = slip, or type = symmetry.
ELEMENT_SET( "interior" ) {
shape = four_node_tet
elements = { 1, 8, 3, 4, 9 ;
3, 3, 4, 9, 5 ;
... }
...
}
PARTICLE_SURFACE( "wall" ) {
shape = three_node_triangle
element_set = "interior"
surfaces = { 1, 12, 9, 3, 4 ;
3, 52, 5, 3, 4 ; }
type = wall
}
specifies that two surfaces of the element set "interior" are on a wall and that no particles are allowed to penetrate this wall.
- 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.
1 12 9 3 4
3 52 5 3 4
PARTICLE_SURFACE ( "no-slip wall" ) {
shape = three_node_triangle
element_set = "interior"
surfaces = Read( "free.srf" )
...
}
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"
PARTICLE_SURFACE ( "no-slip wall" ) {
surface_sets = {"tri_faces", "quad_faces"}
...
}
tri faces
quad faces
PARTICLE_SURFACE ( "no-slip wall" ) {
surface_sets = Read("surface_sets.srfst")
...
}
The mixed topology version of the PARTICLE_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.
A wall type specifies that this surface is impenetrable by particles. This specification is necessary because small numerical errors in particle tracking, or physical effects like inertia, may lead to particles intersecting a wall and becoming lost.
Specification of a particle surface via this command has no effect on the execution of AcuSolve. The only purpose of this command is to provide geometrical information to post-processing modules that perform particle tracking.