Digital Image Correlation Engine  Version 1.0
A modular, high-performance, image correlation tool used to compute full-field displacements and strains from digital images
Classes | Typedefs | Functions
DICe::mesh Namespace Reference

computational mesh utilities associated with the global DIC method and physics More...

Classes

class  Bond
 Represents a connection between two mesh objects (used mostly for peridynamics) More...
 
class  CVFEM_Linear_Tet4
 CVFEM Linear Tet element shape function evaluator. More...
 
class  CVFEM_Linear_Tri3
 CVFEM Linear Tri element shape function evaluator. More...
 
class  Edge
 Edge mesh object. More...
 
class  Element
 Standard finite element object. More...
 
class  FEM_Barycentric_Tri6
 FEM Barycentric triangle element shape function evaluator. More...
 
class  FEM_Linear_Hex8
 FEM Linear Tet element shape function evaluator. More...
 
class  FEM_Linear_Quad4
 FEM Linear quad element shape function evaluator. More...
 
class  FEM_Linear_Tri3
 FEM Linear triangle element shape function evaluator. More...
 
class  FEM_Quadratic_Tri6
 FEM quadratic triangle element shape function evaluator. More...
 
class  Internal_Cell
 Internal cell mesh object. More...
 
class  Internal_Face_Edge
 Internal face or edge mesh object (edge for 2D, face for 3D). These do not include the faces or edges on the boundary. More...
 
class  Mesh
 The discretization used by the pysics classes. More...
 
class  Mesh_Object
 A mesh object is the base class for elements, nodes, faces, that make up the computational domain. More...
 
class  Node
 Node mesh object. More...
 
class  Shape_Function_Evaluator
 Base class for shape function evaluation. More...
 
class  Shape_Function_Evaluator_Factory
 Factory class that creates shape function evaluators. More...
 
struct  side_set_info
 Holds information for side sets in the mesh. More...
 
class  Subelement
 Elements are divided up in to subelements for CVFEM. More...
 

Typedefs

typedef std::set< int_tordinal_set
 typedef
 
typedef std::vector< Teuchos::RCP< Node > > connectivity_vector
 typedef
 
typedef std::map< int_t, connectivity_vectorconn_map
 typedef
 
typedef std::map< int_t, Base_Element_Type > block_type_map
 typedef
 
typedef std::map< field_enums::Entity_Rank, std::set< int_t > > shallow_relations_map
 typedef
 
typedef std::map< field_enums::Entity_Rank, std::vector< Teuchos::RCP< Mesh_Object > > > deep_relations_map
 typedef
 
typedef std::map< const field_enums::Field_Spec, const Teuchos::RCP< MultiField > > field_registry
 typedef
 
typedef std::map< int_t, std::vector< int_t > > bc_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Element > > element_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Subelement > > subelement_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Internal_Face_Edge > > internal_face_edge_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::External_Face_Edge > > external_face_edge_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Edge > > edge_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Bond > > bond_set
 typedef
 
typedef std::vector< Teuchos::RCP< DICe::mesh::Internal_Cell > > internal_cell_set
 typedef
 
typedef std::map< int_t, Teuchos::RCP< DICe::mesh::Node > > node_set
 typedef
 

Functions

DICE_LIB_DLL_EXPORT Teuchos::RCP< Meshcreate_point_or_tri_mesh (const DICe::mesh::Base_Element_Type elem_type, Teuchos::ArrayRCP< scalar_t > node_coords_x, Teuchos::ArrayRCP< scalar_t > node_coords_y, Teuchos::ArrayRCP< int_t > connectivity, Teuchos::ArrayRCP< int_t > node_map, Teuchos::ArrayRCP< int_t > elem_map, std::vector< std::pair< int_t, int_t > > &dirichlet_boundary_nodes, std::set< int_t > &neumann_boundary_nodes, std::set< int_t > &lagrange_boundary_nodes, const std::string &serial_output_filename)
 
DICE_LIB_DLL_EXPORT Teuchos::RCP< Meshcreate_tri3_mesh_from_tri6 (Teuchos::RCP< Mesh > tri6_mesh, const std::string &serial_output_filename)
 
DICE_LIB_DLL_EXPORT std::string tostring (const Component &comp)
 
DICE_LIB_DLL_EXPORT Component string_to_component (const std::string &input_string)
 
DICE_LIB_DLL_EXPORT std::string index_to_component_string (const int_t index)
 
DICE_LIB_DLL_EXPORT std::string index_to_component (const int_t index)
 
DICE_LIB_DLL_EXPORT std::string tostring (const Base_Element_Type &base_element_type)
 
DICE_LIB_DLL_EXPORT Base_Element_Type string_to_base_element_type (const std::string &input_string)
 
DICE_LIB_DLL_EXPORT int_t toindex (const Component comp)
 
DICE_LIB_DLL_EXPORT std::string tostring (const Physics_Term &physics_term)
 
DICE_LIB_DLL_EXPORT Physics_Term string_to_physics_term (const std::string &input_string)
 

Detailed Description

computational mesh utilities associated with the global DIC method and physics

Function Documentation

◆ create_point_or_tri_mesh()

DICE_LIB_DLL_EXPORT Teuchos::RCP<Mesh> DICe::mesh::create_point_or_tri_mesh ( const DICe::mesh::Base_Element_Type  elem_type,
Teuchos::ArrayRCP< scalar_t node_coords_x,
Teuchos::ArrayRCP< scalar_t node_coords_y,
Teuchos::ArrayRCP< int_t connectivity,
Teuchos::ArrayRCP< int_t node_map,
Teuchos::ArrayRCP< int_t elem_map,
std::vector< std::pair< int_t, int_t > > &  dirichlet_boundary_nodes,
std::set< int_t > &  neumann_boundary_nodes,
std::set< int_t > &  lagrange_boundary_nodes,
const std::string &  serial_output_filename 
)

create a point or triangle mesh from scratch, (not read from an existing file)

Parameters
elem_typethe element type TRI6 or TRI3
node_coords_xx coordinates of the nodes
node_coords_yy coordinates of the nodes
connectivitythe connectivity matrix (always 1...n based)
node_mapconverts local ids to global ids
elem_mapconverts local ids to global ids
dirichlet_boundary_nodesa set of nodes to mark as dirichlet boundary nodes
neumann_boundary_nodesa set of nodes to mark as a neumann boundary
lagrange_boundary_nodesa set of nodes to mark as the lagrange multiplier boundary nodes
serial_output_filenameThe output fiel name with no parallel decorations

◆ create_tri3_mesh_from_tri6()

DICE_LIB_DLL_EXPORT Teuchos::RCP<Mesh> DICe::mesh::create_tri3_mesh_from_tri6 ( Teuchos::RCP< Mesh tri6_mesh,
const std::string &  serial_output_filename 
)

create a linear tri mesh from a quadratic one

Parameters
tri6_meshthe parent tri6 mesh
serial_output_filenamethe name to use for the output

◆ index_to_component()

DICE_LIB_DLL_EXPORT std::string DICe::mesh::index_to_component ( const int_t  index)

converts and index to a component

Parameters
indexthe index

◆ index_to_component_string()

DICE_LIB_DLL_EXPORT std::string DICe::mesh::index_to_component_string ( const int_t  index)

converts an index to a component string

Parameters
indexthe index

◆ string_to_base_element_type()

DICE_LIB_DLL_EXPORT Base_Element_Type DICe::mesh::string_to_base_element_type ( const std::string &  input_string)

converts a string to a base element type

Parameters
input_stringthe input string

◆ string_to_component()

DICE_LIB_DLL_EXPORT Component DICe::mesh::string_to_component ( const std::string &  input_string)

converts a string to a component

Parameters
input_stringthe input string

◆ string_to_physics_term()

DICE_LIB_DLL_EXPORT Physics_Term DICe::mesh::string_to_physics_term ( const std::string &  input_string)

converts a string to a physics term

Parameters
input_stringthe input string

◆ toindex()

DICE_LIB_DLL_EXPORT int_t DICe::mesh::toindex ( const Component  comp)

converts a component to an index

Parameters
compthe component

◆ tostring() [1/3]

DICE_LIB_DLL_EXPORT std::string DICe::mesh::tostring ( const Base_Element_Type &  base_element_type)

converts a base element type to a string

Parameters
base_element_typethe element type

◆ tostring() [2/3]

DICE_LIB_DLL_EXPORT std::string DICe::mesh::tostring ( const Component &  comp)

converts a component to a string

Parameters
compthe component

◆ tostring() [3/3]

DICE_LIB_DLL_EXPORT std::string DICe::mesh::tostring ( const Physics_Term &  physics_term)

converts a physics term to a string

Parameters
physics_termthe term to convert