Go to the documentation of this file.
20 #ifndef LIBMESH_DYNA_IO_H
21 #define LIBMESH_DYNA_IO_H
24 #include "libmesh/libmesh_common.h"
25 #include "libmesh/mesh_input.h"
26 #include "libmesh/mesh_output.h"
84 virtual void read (
const std::string &
name)
override;
93 unsigned int var_num);
105 std::map<dof_id_type, std::vector<std::pair<dof_id_type, Real>>>
156 std::vector<unsigned int> && nodes_in);
174 out.insert(std::make_pair(eledef.
type, eledef));
175 in.insert(std::make_pair(std::make_tuple(eledef.
dyna_type, eledef.
dim, eledef.
p), eledef));
178 std::map<ElemType, ElementDefinition>
out;
180 typedef std::tuple<dyna_int_type, dyna_int_type, dyna_int_type>
Key;
182 std::map<Key, ElementDefinition>
in;
201 #endif // LIBMESH_DYNA_IO_H
std::map< Key, ElementDefinition > in
The libMesh namespace provides an interface to certain functionality in the library.
std::vector< Node * > spline_node_ptrs
std::vector< unsigned int > nodes
ElementDefinition(ElemType type_in, dyna_int_type dyna_type_in, dyna_int_type dim_in, dyna_int_type p_in)
void add_spline_constraints(DofMap &dof_map, unsigned int sys_num, unsigned int var_num)
Constrains finite element degrees of freedom in terms of spline degrees of freedom by adding user-def...
void read_mesh(std::istream &in)
Implementation of the read() function.
double dyna_fp_type
The floating-point type DYNA uses.
This is the MeshBase class.
static ElementMaps build_element_maps()
A static function used to construct the _element_maps struct, statically.
bool constraint_rows_broadcast
Defines mapping from libMesh element types to LS-DYNA element types or vice-versa.
static ElementMaps _element_maps
A static ElementMaps object that is built statically and used by all instances of this class.
std::map< ElemType, ElementDefinition > out
Reading and writing meshes in (a subset of) LS-DYNA format.
int32_t dyna_int_type
The integer type DYNA uses.
void add_def(const ElementDefinition &eledef)
static const int max_ints_per_line
How many can we find on a line?
This class handles the numbering of degrees of freedom on a mesh.
static const int max_fps_per_line
How many can we find on a line?
std::tuple< dyna_int_type, dyna_int_type, dyna_int_type > Key
std::map< dof_id_type, std::vector< std::pair< dof_id_type, Real > > > constraint_rows
virtual void read(const std::string &name) override
Reads in a mesh in the Dyna format from the ASCII file given by name.
DynaIO(MeshBase &mesh)
Constructor.
std::string name(const ElemQuality q)
This function returns a string containing some name for q.
ElemType
Defines an enum for geometric element types.
struct which holds a map from LS-DYNA to libMesh element numberings and vice-versa.