|
| Mesh (const std::string &input_filename, const std::string &output_filename) |
|
| Mesh (const std::string &output_filename) |
|
| ~Mesh () |
| Destructor.
|
|
Teuchos::RCP< MultiField_Comm > | get_comm () const |
| Returns a pointer to the MPI or serial communicator.
|
|
int_t | spatial_dimension () const |
| Returns the spatial dimension of the mesh.
|
|
void | set_spatial_dimension (const int_t dim) |
|
int_t | get_input_exoid () const |
| Returns the input exoid for the mesh file (used by exodusII calls)
|
|
void | set_input_exoid (const int_t id) |
| Sets the input exoid for the mesh file (used by exodusII calls)
|
|
int_t | get_output_exoid () const |
| Returns the output exoid for the mesh file (used by exodusII calls)
|
|
int_t | get_face_edge_output_exoid () const |
| Returns the output exoid for the face/edge output.
|
|
void | set_output_exoid (const int_t id) |
| Sets the output exoid for the mesh file (used by exodusII calls)
|
|
void | set_face_edge_output_exoid (const int_t id) |
| Sets the output exoid for the mesh file (used by exodusII calls)
|
|
std::string | get_input_filename () const |
| Returns the name of the input mesh (already decorated for multiple processors)
|
|
std::string | get_output_filename () const |
| Returns the name of the output mesh (already decorated for multiple processors)
|
|
std::string | get_face_edge_output_filename () const |
| Returns the name of the output mesh (already decorated for multiple processors)
|
|
block_type_map * | get_block_type_map () |
| Returns a pointer to the map of blocks and the associated element type.
|
|
side_set_info * | get_side_set_info () |
| Returns a pointer to the side set info struct.
|
|
size_t | num_node_sets () const |
| Returns the number of node sets.
|
|
bc_set * | get_node_bc_sets () |
| Returns a pointer to the node bc sets.
|
|
void | create_elem_node_field_maps (const bool force_elem_and_node_maps_to_match=false) |
|
void | create_mixed_node_field_maps (Teuchos::RCP< Mesh > alt_mesh) |
| Create the field maps for the mixed formulation elements.
|
|
void | create_face_cell_field_maps () |
|
field_registry * | get_field_registry () |
| The field registry holds fields and their descriptors together in a map.
|
|
bool | has_field (const field_enums::Field_Name field_name) |
|
Teuchos::RCP< MultiField > | get_field (const field_enums::Field_Spec &field_spec) |
|
std::pair< field_enums::Field_Spec, Teuchos::RCP< MultiField > > | get_field (const std::string &field_name) |
|
field_enums::Field_Spec | get_field_spec (const std::string &field_name, const field_enums::Field_State state=field_enums::NO_FIELD_STATE) |
|
Teuchos::RCP< MultiField > | get_overlap_field (const field_enums::Field_Spec &field_spec) |
|
std::vector< std::string > | get_field_names (const field_enums::Entity_Rank entity_rank, const field_enums::Field_Type field_type, const bool only_the_printable) const |
|
void | create_field (const field_enums::Field_Spec &field_spec) |
|
void | re_register_field (const field_enums::Field_Spec &existing_field_spec, const field_enums::Field_Spec &new_field_spec) |
|
bool | field_exists (const std::string &field_name) |
|
Teuchos::RCP< MultiField > | field_import (const field_enums::Field_Spec &field_spec, Teuchos::RCP< MultiField_Map > to_map) |
|
void | field_overlap_export (const Teuchos::RCP< MultiField > from_field, const field_enums::Field_Spec &to_field_spec, const Combine_Mode mode=INSERT) |
|
void | print_field_info () |
| Print verbose information about all existing fields.
|
|
void | print_field_stats () |
| Print the max min avg and std dev of all fields to the screen.
|
|
scalar_t | field_stats (const field_enums::Field_Spec &field_spec, scalar_t &min, scalar_t &max, scalar_t &avg, scalar_t &std_dev, const int_t comp, const field_enums::Field_Spec &marker_spec=DICe::field_enums::NO_SUCH_FS, const scalar_t &threshold=-1.0) |
|
Teuchos::RCP< MultiField_Map > | get_proc_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_all_own_all_proc_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_node_overlap_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_node_overlap_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_mixed_vector_node_overlap_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_node_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_node_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_mixed_vector_node_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_face_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_face_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_elem_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_elem_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_subelem_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_subelem_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_scalar_internal_cell_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< MultiField_Map > | get_vector_internal_cell_dist_map () |
| Returns a pointer to the communication map.
|
|
Teuchos::RCP< element_set > | get_element_set () |
| Returns a pointer to the set of all elements on this processor.
|
|
Teuchos::RCP< subelement_set > | get_subelement_set () |
| Returns a pointer to the subelements on this processor.
|
|
Teuchos::RCP< internal_cell_set > | get_internal_cell_set () |
| Returns a pointer to the internal cells on this processor.
|
|
Teuchos::RCP< internal_face_edge_set > | get_internal_face_edge_set () |
| Returns a pointer to the internal faces or edges on this processor.
|
|
Teuchos::RCP< edge_set > | get_edge_set () |
| Returns a pointer to the internal faces or edges on this processor. More...
|
|
Teuchos::RCP< bond_set > | get_bond_set () |
| Returns a pointer to the bonds on this processor.
|
|
Teuchos::RCP< node_set > | get_node_set () |
| Returns a pointer to the nodes on this processor.
|
|
Teuchos::RCP< element_set > | get_element_set (const int_t block_id) |
|
Teuchos::RCP< bond_set > | get_bond_set (const int_t block_id) |
|
Teuchos::RCP< subelement_set > | get_subelement_set (const int_t block_id) |
|
Teuchos::RCP< node_set > | get_node_set (const int_t block_id) |
|
Teuchos::RCP< internal_face_edge_set > | get_internal_face_set (const int_t block_id) |
|
std::map< int_t, Teuchos::RCP< element_set > > * | get_element_sets_by_block () |
| Returns the whole map of elements by block.
|
|
std::map< int_t, Teuchos::RCP< bond_set > > * | get_bond_sets_by_block () |
| Returns the whole map of bonds by block.
|
|
std::map< int_t, Teuchos::RCP< subelement_set > > * | get_subelement_sets_by_block () |
| Returns the whole map of subelements by block.
|
|
std::map< int_t, Teuchos::RCP< node_set > > * | get_node_sets_by_block () |
| Returns the whole map of nodes by block.
|
|
std::map< int_t, Teuchos::RCP< internal_face_edge_set > > * | get_internal_face_sets_by_block () |
| Returns the whole map of internal faces or edges by block.
|
|
size_t | num_elem () const |
| Returns the number of elements in the mesh.
|
|
size_t | num_subelem () const |
| Returns the number of subelements in the mesh.
|
|
size_t | num_internal_faces () const |
| Returns the number of internal faces or edges in the mehs.
|
|
size_t | num_edges () const |
| Returns the number of edges in the mesh.
|
|
size_t | num_bonds () const |
| Returns the number of bonds in the mesh.
|
|
size_t | num_nodes () const |
| Returns the number of nodes in the mesh.
|
|
bool | is_initialized () const |
| Returns true if the mesh has been initialized.
|
|
void | set_initialized () |
| Sets the initialized flag for the mesh.
|
|
bool | control_volumes_are_initialized () const |
| Returns true if the control volumes have been initialized.
|
|
void | set_control_volumes_are_initialzed () |
| Sets the control volumes are initialized flag (requied for CVFEM)
|
|
bool | cell_sizes_are_initialized () const |
| Returns true if the control volumes have been initialized.
|
|
void | set_cell_sizes_are_initialized () |
| Sets the control volumes are initialized flag (requied for CVFEM)
|
|
int_t | max_num_elem_relations () |
| Returns the maximum number of element relations.
|
|
int_t | mean_num_elem_relations () |
| Returns the mean number of element relations.
|
|
int_t | min_num_elem_relations () |
| Returns the minimum number of element relations.
|
|
void | set_max_num_elem_relations (const int_t &max_rel) |
| Sets the maximum number of element relations.
|
|
void | set_min_num_elem_relations (const int_t &min_rel) |
| Sets the minimum number of element relations.
|
|
void | set_mean_num_elem_relations (const int_t &mean_rel) |
| Sets the meam number of element relations.
|
|
int_t | max_num_node_relations () |
| Returns the maximum number of node relations.
|
|
int_t | mean_num_node_relations () |
| Returns the mean number of node relations.
|
|
int_t | min_num_node_relations () |
| Returns the minimum number of node relations.
|
|
void | set_max_num_node_relations (const int_t &max_rel) |
| Sets the maximum number of node relations.
|
|
void | set_min_num_node_relations (const int_t &min_rel) |
| Sets the minimum number of node relations.
|
|
void | set_mean_num_node_relations (const int_t &mean_rel) |
| Sets the meam number of node relations.
|
|
void | set_max_num_entries_per_row (const int_t &num_entries) |
| Sets the maxium number of entries per row in the stiffness matrix.
|
|
int_t | max_num_subelem_face_relations () |
| Returns the maximum number of subelem face relations.
|
|
int_t | mean_num_subelem_face_relations () |
| Returns the mean number of subelem face relations.
|
|
int_t | min_num_subelem_face_relations () |
| Returns the minimum number of subelem face relations.
|
|
int_t | max_num_entries_per_row () |
| Returns the max number of entries per row in the stiffness matrix.
|
|
void | set_max_num_subelem_face_relations (const int_t &max_rel) |
| Sets the maximum number of subelement face relations.
|
|
void | set_min_num_subelem_face_relations (const int_t &min_rel) |
| Sets the minimum number of subelement face relations.
|
|
void | set_mean_num_subelem_face_relations (const int_t &mean_rel) |
| Sets the mean number of subelement face relations.
|
|
size_t | num_blocks () const |
| Returns the number of blocks in the mesh.
|
|
int_t | num_elem_in_block (const int_t block_id) const |
|
int_t | elem_global_to_local_id (const int_t global_id) |
|
int_t | node_global_to_local_id (const int_t global_id) |
|
std::vector< std::set< std::pair< int_t, int_t > > > * | get_pixel_ownership () |
| Note y and x values are reversed here.
|
|
std::vector< std::set< std::pair< scalar_t, scalar_t > > > * | get_integration_point_ownership () |
| Note y and x values are reversed here.
|
|
void | set_bc_defs (std::vector< Boundary_Condition_Def > &bc_defs) |
|
std::vector< Boundary_Condition_Def > * | bc_defs () |
| returns a pointer to the boundary condition defs
|
|
scalar_t | ic_value_x () const |
| return the initial condition value in x
|
|
scalar_t | ic_value_y () const |
| return the initial condition value in x
|
|
void | set_ic_values (const scalar_t &value_x, const scalar_t &value_y) |
| set the value of the initial conditions
|
|
void | set_is_regular_grid (const bool is_regular_grid) |
| set the value of the is a regular grid flag
|
|
bool | is_regular_grid () const |
| returns true if this mesh is a regular grid
|
|
The discretization used by the pysics classes.
There are a number of book-keeping members of a Mesh class. These are used in different ways depending on the physics being solved. For example peridynamics physics will use nodes and elements quite differently than transport physics. The mesh also holds the solution fields used by the physics. These fields are different than schema fields in that there is a lot more information used to manage these fields. There is also more complicated communication of fields accross processors. The underlying MultiFields in both cases are the same so schema fields and mesh fields can interact with each other, but they have been separated to preserve the separation between physics and DIC.