Adaptation class for random fracture. More...
#include <AAdapt_RandomFracture.hpp>
Public Member Functions | |
RandomFracture (const Teuchos::RCP< Teuchos::ParameterList > ¶ms_, const Teuchos::RCP< ParamLib > ¶mLib_, Albany::StateManager &StateMgr_, const Teuchos::RCP< const Epetra_Comm > &comm_) | |
Constructor. | |
~RandomFracture () | |
Destructor. | |
virtual bool | queryAdaptationCriteria () |
Check adaptation criteria to determine if the mesh needs adapting. | |
virtual bool | adaptMesh (const Epetra_Vector &solution, const Epetra_Vector &ovlp_solution) |
Apply adaptation method to mesh and problem. | |
virtual void | solutionTransfer (const Epetra_Vector &oldSolution, Epetra_Vector &newSolution) |
Transfer solution between meshes. | |
Teuchos::RCP< const Teuchos::ParameterList > | getValidAdapterParameters () const |
Each adapter must generate it's list of valid parameters. | |
Private Member Functions | |
RandomFracture () | |
Disallow copy and assignment and default. | |
RandomFracture (const RandomFracture &) | |
RandomFracture & | operator= (const RandomFracture &) |
void | showTopLevelRelations () |
void | showElemToNodes () |
Method to ... | |
void | showRelations () |
Method to ... | |
void | showRelations (int level, const stk::mesh::Entity &ent) |
int | accumulateFractured (int num_fractured) |
Parallel all-reduce function. | |
void | getGlobalOpenList (std::map< stk::mesh::EntityKey, bool > &local_entity_open, std::map< stk::mesh::EntityKey, bool > &global_entity_open) |
Parallel all-gatherv function. | |
Private Attributes | |
stk::mesh::BulkData * | bulk_data_ |
STK mesh Bulk Data. | |
stk::mesh::fem::FEMMetaData * | meta_data_ |
STK mesh Bulk Data. | |
Teuchos::RCP < Albany::AbstractSTKMeshStruct > | stk_mesh_struct_ |
Teuchos::RCP < Albany::AbstractDiscretization > | discretization_ |
Albany::STKDiscretization * | stk_discretization_ |
stk::mesh::EntityRank | node_rank_ |
stk::mesh::EntityRank | edge_rank_ |
stk::mesh::EntityRank | face_rank_ |
stk::mesh::EntityRank | element_rank_ |
Teuchos::RCP < LCM::AbstractFractureCriterion > | fracture_criterion_ |
Teuchos::RCP< LCM::Topology > | topology_ |
std::vector< stk::mesh::Entity * > | fractured_faces_ |
Edges to fracture the mesh on. | |
std::vector< std::vector < stk::mesh::Entity * > > | old_elem_to_node_ |
Data structures used to transfer solution between meshes Element to node connectivity for old mesh. | |
std::vector< std::vector < stk::mesh::Entity * > > | new_elem_to_node_ |
Element to node connectivity for new mesh. | |
int | num_dim_ |
int | remesh_file_index_ |
std::string | base_exo_filename_ |
int | fracture_interval_ |
double | fracture_probability_ |
Adaptation class for random fracture.
Definition at line 30 of file AAdapt_RandomFracture.hpp.
AAdapt::RandomFracture::RandomFracture | ( | const Teuchos::RCP< Teuchos::ParameterList > & | params_, | |
const Teuchos::RCP< ParamLib > & | paramLib_, | |||
Albany::StateManager & | StateMgr_, | |||
const Teuchos::RCP< const Epetra_Comm > & | comm_ | |||
) |
Constructor.
Definition at line 26 of file AAdapt_RandomFracture.cpp.
AAdapt::RandomFracture::~RandomFracture | ( | ) |
Destructor.
Definition at line 70 of file AAdapt_RandomFracture.cpp.
AAdapt::RandomFracture::RandomFracture | ( | ) | [private] |
Disallow copy and assignment and default.
AAdapt::RandomFracture::RandomFracture | ( | const RandomFracture & | ) | [private] |
bool AAdapt::RandomFracture::queryAdaptationCriteria | ( | ) | [virtual] |
Check adaptation criteria to determine if the mesh needs adapting.
Definition at line 75 of file AAdapt_RandomFracture.cpp.
bool AAdapt::RandomFracture::adaptMesh | ( | const Epetra_Vector & | solution, | |
const Epetra_Vector & | ovlp_solution | |||
) | [virtual] |
Apply adaptation method to mesh and problem.
Returns true if adaptation is performed successfully.
Definition at line 130 of file AAdapt_RandomFracture.cpp.
void AAdapt::RandomFracture::solutionTransfer | ( | const Epetra_Vector & | oldSolution, | |
Epetra_Vector & | newSolution | |||
) | [virtual] |
Transfer solution between meshes.
Definition at line 199 of file AAdapt_RandomFracture.cpp.
Teuchos::RCP< const Teuchos::ParameterList > AAdapt::RandomFracture::getValidAdapterParameters | ( | ) | const [virtual] |
Each adapter must generate it's list of valid parameters.
Reimplemented from AAdapt::AbstractAdapter.
Definition at line 206 of file AAdapt_RandomFracture.cpp.
RandomFracture& AAdapt::RandomFracture::operator= | ( | const RandomFracture & | ) | [private] |
void AAdapt::RandomFracture::showTopLevelRelations | ( | ) | [private] |
Definition at line 223 of file AAdapt_RandomFracture.cpp.
void AAdapt::RandomFracture::showElemToNodes | ( | ) | [private] |
Method to ...
void AAdapt::RandomFracture::showRelations | ( | ) | [private] |
Method to ...
Definition at line 243 of file AAdapt_RandomFracture.cpp.
void AAdapt::RandomFracture::showRelations | ( | int | level, | |
const stk::mesh::Entity & | ent | |||
) | [private] |
int AAdapt::RandomFracture::accumulateFractured | ( | int | num_fractured | ) | [private] |
Parallel all-reduce function.
Returns the argument in serial, returns the sum of the argument in parallel
Definition at line 368 of file AAdapt_RandomFracture.cpp.
void AAdapt::RandomFracture::getGlobalOpenList | ( | std::map< stk::mesh::EntityKey, bool > & | local_entity_open, | |
std::map< stk::mesh::EntityKey, bool > & | global_entity_open | |||
) | [private] |
Parallel all-gatherv function.
Communicates local open list to all processors to form global open list.
stk::mesh::BulkData* AAdapt::RandomFracture::bulk_data_ [private] |
STK mesh Bulk Data.
Definition at line 114 of file AAdapt_RandomFracture.hpp.
stk::mesh::fem::FEMMetaData* AAdapt::RandomFracture::meta_data_ [private] |
STK mesh Bulk Data.
Definition at line 119 of file AAdapt_RandomFracture.hpp.
Teuchos::RCP<Albany::AbstractSTKMeshStruct> AAdapt::RandomFracture::stk_mesh_struct_ [private] |
Definition at line 121 of file AAdapt_RandomFracture.hpp.
Teuchos::RCP<Albany::AbstractDiscretization> AAdapt::RandomFracture::discretization_ [private] |
Definition at line 123 of file AAdapt_RandomFracture.hpp.
Definition at line 125 of file AAdapt_RandomFracture.hpp.
stk::mesh::EntityRank AAdapt::RandomFracture::node_rank_ [private] |
Definition at line 127 of file AAdapt_RandomFracture.hpp.
stk::mesh::EntityRank AAdapt::RandomFracture::edge_rank_ [private] |
Definition at line 128 of file AAdapt_RandomFracture.hpp.
stk::mesh::EntityRank AAdapt::RandomFracture::face_rank_ [private] |
Definition at line 129 of file AAdapt_RandomFracture.hpp.
stk::mesh::EntityRank AAdapt::RandomFracture::element_rank_ [private] |
Definition at line 130 of file AAdapt_RandomFracture.hpp.
Teuchos::RCP<LCM::AbstractFractureCriterion> AAdapt::RandomFracture::fracture_criterion_ [private] |
Definition at line 132 of file AAdapt_RandomFracture.hpp.
Teuchos::RCP<LCM::Topology> AAdapt::RandomFracture::topology_ [private] |
Definition at line 133 of file AAdapt_RandomFracture.hpp.
std::vector<stk::mesh::Entity*> AAdapt::RandomFracture::fractured_faces_ [private] |
Edges to fracture the mesh on.
Definition at line 136 of file AAdapt_RandomFracture.hpp.
std::vector<std::vector<stk::mesh::Entity*> > AAdapt::RandomFracture::old_elem_to_node_ [private] |
Data structures used to transfer solution between meshes Element to node connectivity for old mesh.
Definition at line 141 of file AAdapt_RandomFracture.hpp.
std::vector<std::vector<stk::mesh::Entity*> > AAdapt::RandomFracture::new_elem_to_node_ [private] |
Element to node connectivity for new mesh.
Definition at line 144 of file AAdapt_RandomFracture.hpp.
int AAdapt::RandomFracture::num_dim_ [private] |
Definition at line 146 of file AAdapt_RandomFracture.hpp.
int AAdapt::RandomFracture::remesh_file_index_ [private] |
Definition at line 147 of file AAdapt_RandomFracture.hpp.
std::string AAdapt::RandomFracture::base_exo_filename_ [private] |
Definition at line 148 of file AAdapt_RandomFracture.hpp.
int AAdapt::RandomFracture::fracture_interval_ [private] |
Definition at line 150 of file AAdapt_RandomFracture.hpp.
double AAdapt::RandomFracture::fracture_probability_ [private] |
Definition at line 151 of file AAdapt_RandomFracture.hpp.