|
Mundy: Multibody Nonlocal Dynamics Version of the Day
|
#include <DeclareField.hpp>
Public Types | |
| using | field_value_typeype = T |
Public Member Functions | |
Constructors and Assignment Operators | |
| FieldDeclarationT (stk::mesh::MetaData &meta_data) | |
| Canonical constructor. | |
| FieldDeclarationT (const FieldDeclarationT &)=default | |
| Copy/Move constructors and assignment operators. | |
| FieldDeclarationT (FieldDeclarationT &&)=default | |
| FieldDeclarationT & | operator= (const FieldDeclarationT &)=default |
| FieldDeclarationT & | operator= (FieldDeclarationT &&)=default |
Fluent interface | |
| class | FieldDeclaration |
| FieldDeclarationT | rank (stk::mesh::EntityRank rank) |
| Set the entity rank of the field (must be called before declare()). | |
| FieldDeclarationT | name (const std::string &field_name) |
| Set the name of the field (must be called before declare()). | |
| FieldDeclarationT | role (Ioss::Field::RoleType field_role) |
| Set the io role of the field (optional). | |
| FieldDeclarationT | output_type (stk::io::FieldOutputType output_type) |
| Set the stk output type of the field (optional). | |
| stk::mesh::Field< T > & | declare () |
| Declare a field with the given stk output type and role. | |
| stk::mesh::MetaData & | meta_data () const |
| bool | has_rank () const |
| bool | has_name () const |
| bool | has_role () const |
| bool | has_output_type () const |
| stk::mesh::EntityRank | rank_value () const |
| const std::string & | name_value () const |
| Ioss::Field::RoleType | role_value () const |
| stk::io::FieldOutputType | output_type_value () const |
| using mundy::mesh::FieldDeclarationT< T >::field_value_typeype = T |
|
inline |
|
default |
|
default |
|
default |
|
default |
|
inline |
|
inline |
|
inline |
The typical Mundy application will label fields as TRANSIENT or MESH. Note, the NODE_COORDINATES field is special and is automatically assigned the MESH role by stk. If you attempt to give it a different role, an error will be thrown.
Possible roles include: INTERNAL, MESH, /**< A field which is used to define the basic geometry or topology of the model and is not normally transient in nature. Examples would be element connectivity or nodal coordinates. */ ATTRIBUTE, /**< A field which is used to define an attribute on an EntityBlock derived class. Examples would be thickness of the elements in a shell element block or the radius of particles in a particle element block. */ MAP, COMMUNICATION, MESH_REDUCTION, /**< A field which summarizes some non-transient data about an entity (
|
inline |
The output type for a field defines how its individual components are subscripted. For example a vector2 field with name "velocity" will have components velocity_x, velocity_y.
The possible output types and their resulting subscripting are: SCALAR, // [] VECTOR_2D, // [x, y] VECTOR_3D, // [x, y, z] FULL_TENSOR_36, // [xx, yy, zz, xy, yz, zx, yx, zy, xz] FULL_TENSOR_32, // [xx, yy, zz, xy, yx] FULL_TENSOR_22, // [xx, yy, xy, yx] FULL_TENSOR_16, // [xx, xy, yz, zx, yx, zy, xz] FULL_TENSOR_12, // [xx, xy, yx] SYM_TENSOR_33, // [xx, yy, zz, xy, yz, zx] SYM_TENSOR_31, // [xx, yy, zz, xy] SYM_TENSOR_21, // [xx, yy, xy] SYM_TENSOR_13, // [xx, xy, yz, zx] SYM_TENSOR_11, // [xx, xy] SYM_TENSOR_10, // [xx] ASYM_TENSOR_03, // [xy, yz, zx] ASYM_TENSOR_02, // [xy, yz] ASYM_TENSOR_01, // [xy] MATRIX_22, // [xx, xy, yx, yy] MATRIX_33, // [xx, xy, xz, yx, yy, yz, zx, zy, zz] QUATERNION_2D, // [s, q] QUATERNION_3D, // [x, y, z, q] CUSTOM // User-defined subscripting
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |