Panzer
Version of the Day
|
Object that contains information on the physics and discretization of a block of elements with the SAME topology. More...
#include <Panzer_PhysicsBlock.hpp>
Protected Member Functions | |
void | initialize (const Teuchos::RCP< Teuchos::ParameterList > &input_parameters, const int &default_integration_order, const std::string &element_block_id, const panzer::CellData &cell_data, const bool build_transient_support, const std::vector< std::string > &tangent_param_names=std::vector< std::string >()) |
![]() | |
EvaluatorsRegistrar () | |
Default ctor initializes WorksetDetails index to 0. More... | |
virtual | ~EvaluatorsRegistrar () |
template<typename EvalT > | |
void | registerEvaluator (PHX::FieldManager< panzer::Traits > &fm, const Teuchos::RCP< PHX::Evaluator< panzer::Traits > > &op) const |
Related Functions | |
(Note that these are not member functions.) | |
void | buildPhysicsBlocks (const std::map< std::string, std::string > &block_ids_to_physics_ids, const std::map< std::string, Teuchos::RCP< const shards::CellTopology > > &block_ids_to_cell_topo, const Teuchos::RCP< Teuchos::ParameterList > &physics_blocks_plist, const int default_integration_order, const std::size_t workset_size, const Teuchos::RCP< const panzer::EquationSetFactory > &eqset_factory, const Teuchos::RCP< panzer::GlobalData > &global_data, const bool build_transient_support, std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const std::vector< std::string > &tangent_param_names=std::vector< std::string >()) |
Nonmember function for building the physics blocks from a Teuchos::ParameterList for a given list of element blocks. A unique physics block object is built for each element block even if multiple element blocks point to the same physics block. More... | |
void | readPhysicsBlocks (const std::map< std::string, std::string > &block_ids_to_physics_ids, const Teuchos::RCP< Teuchos::ParameterList > &physics_blocks_plist, std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks) |
Nonmember function for reading and constructing physics blocks from a Teuchos::ParameterList for a given list of element blocks. A unique physics block object is built for each element block even if multiple element blocks point to the same physics block. The intialize method must be called before the physics blocks are used. More... | |
Teuchos::RCP < panzer::PhysicsBlock > | findPhysicsBlock (const std::string element_block_id, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physics_blocks, bool throw_on_failure=true) |
Nonmember function for searching and returning a spcific physics block given an element block id. Throws an erro if the physics block is not found. More... | |
Object that contains information on the physics and discretization of a block of elements with the SAME topology.
Definition at line 116 of file Panzer_PhysicsBlock.hpp.
|
inlineexplicit |
for testing purposes only
Definition at line 120 of file Panzer_PhysicsBlock.hpp.
panzer::PhysicsBlock::PhysicsBlock | ( | const Teuchos::RCP< Teuchos::ParameterList > & | physics_block_plist, |
const std::string & | element_block_id, | ||
const int | default_integration_order, | ||
const panzer::CellData & | cell_data, | ||
const Teuchos::RCP< const panzer::EquationSetFactory > & | factory, | ||
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
const bool | build_transient_support, | ||
const std::vector< std::string > & | tangent_param_names = std::vector<std::string>() |
||
) |
This constructor call initialize.
Definition at line 166 of file Panzer_PhysicsBlock.cpp.
panzer::PhysicsBlock::PhysicsBlock | ( | const Teuchos::RCP< Teuchos::ParameterList > & | physics_block_plist, |
const std::string & | element_block_id | ||
) |
This constructor allows a bare bones physics block to be initialized that only knows meta data about the mesh (excepting the cell type). This allows a read in from an input deck and then initializtion further into the code.
Definition at line 199 of file Panzer_PhysicsBlock.cpp.
panzer::PhysicsBlock::PhysicsBlock | ( | const panzer::PhysicsBlock & | pb, |
const panzer::CellData & | cell_data | ||
) |
Definition at line 261 of file Panzer_PhysicsBlock.cpp.
panzer::PhysicsBlock::PhysicsBlock | ( | const std::string & | element_block_id, |
const std::string & | physics_block_id, | ||
const int | integration_order, | ||
const panzer::CellData & | cell_data, | ||
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
const Teuchos::RCP< panzer::PureBasis > & | fields | ||
) |
This constructor builds a bare bones equation set. It will do gather and scatter for a particular field and set of basis functions. It will not have any equation sets associated with it.
Definition at line 211 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::initialize | ( | const int | default_integration_order, |
const bool | build_transient_support, | ||
const panzer::CellData & | cell_data, | ||
const Teuchos::RCP< const panzer::EquationSetFactory > & | factory, | ||
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
const std::vector< std::string > & | tangent_param_names = std::vector<std::string>() |
||
) |
Initialize with cell data, equation set and global data. This is required before the physics blocks can be used.
Definition at line 281 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::setActiveEvaluationTypes | ( | const std::vector< bool > & | aet | ) |
Used to save memory by disabling unneeded evaluation types.
Definition at line 398 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::activateAllEvaluationTypes | ( | ) |
Used to reactivate all evaluation types if some were temporarily disabled with a call to setActiveEvalautionTypes().
Definition at line 405 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterEquationSetEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 413 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterGatherAndOrientationEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 446 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterDOFProjectionsToIPEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::Ptr< const panzer::LinearObjFactory< panzer::Traits > > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 476 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterScatterEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 514 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterClosureModelEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | factory, | ||
const Teuchos::ParameterList & | models, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 544 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterInitialConditionEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | factory, | ||
const std::string & | model_name, | ||
const Teuchos::ParameterList & | models, | ||
const panzer::LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 659 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterClosureModelEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | factory, | ||
const std::string & | model_name, | ||
const Teuchos::ParameterList & | models, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 584 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterEquationSetEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 325 of file Panzer_PhysicsBlock.hpp.
void panzer::PhysicsBlock::buildAndRegisterGatherAndOrientationEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 348 of file Panzer_PhysicsBlock.hpp.
void panzer::PhysicsBlock::buildAndRegisterDOFProjectionsToIPEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::Ptr< const panzer::LinearObjFactory< panzer::Traits > > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 373 of file Panzer_PhysicsBlock.hpp.
void panzer::PhysicsBlock::buildAndRegisterScatterEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 402 of file Panzer_PhysicsBlock.hpp.
void panzer::PhysicsBlock::buildAndRegisterClosureModelEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | factory, | ||
const Teuchos::ParameterList & | models, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 424 of file Panzer_PhysicsBlock.hpp.
void panzer::PhysicsBlock::buildAndRegisterInitialConditionEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | factory, | ||
const std::string & | model_name, | ||
const Teuchos::ParameterList & | models, | ||
const panzer::LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 455 of file Panzer_PhysicsBlock.hpp.
const std::vector< std::string > & panzer::PhysicsBlock::getDOFNames | ( | ) | const |
Definition at line 676 of file Panzer_PhysicsBlock.cpp.
const std::vector< panzer::StrPureBasisPair > & panzer::PhysicsBlock::getProvidedDOFs | ( | ) | const |
Definition at line 682 of file Panzer_PhysicsBlock.cpp.
const std::vector< std::vector< std::string > > & panzer::PhysicsBlock::getCoordinateDOFs | ( | ) | const |
Definition at line 688 of file Panzer_PhysicsBlock.cpp.
const std::vector< panzer::StrPureBasisPair > & panzer::PhysicsBlock::getTangentFields | ( | ) | const |
Returns list of tangent fields from DOFs and tangent param names.
Definition at line 694 of file Panzer_PhysicsBlock.cpp.
panzer::WorksetNeeds panzer::PhysicsBlock::getWorksetNeeds | ( | ) | const |
Build a workset needs object for this physics block.
Definition at line 700 of file Panzer_PhysicsBlock.cpp.
const std::map< std::string, Teuchos::RCP< panzer::PureBasis > > & panzer::PhysicsBlock::getBases | ( | ) | const |
Returns the unique set of bases, key is the unique panzer::PureBasis::name() of the basis.
Definition at line 737 of file Panzer_PhysicsBlock.cpp.
const std::map< int, Teuchos::RCP< panzer::IntegrationRule > > & panzer::PhysicsBlock::getIntegrationRules | ( | ) | const |
Returns the unique set of point rules, key is the unique panzer::PointRule::name()
Definition at line 744 of file Panzer_PhysicsBlock.cpp.
const shards::CellTopology panzer::PhysicsBlock::getBaseCellTopology | ( | ) | const |
Definition at line 750 of file Panzer_PhysicsBlock.cpp.
std::string panzer::PhysicsBlock::physicsBlockID | ( | ) | const |
Definition at line 758 of file Panzer_PhysicsBlock.cpp.
std::string panzer::PhysicsBlock::elementBlockID | ( | ) | const |
Definition at line 764 of file Panzer_PhysicsBlock.cpp.
const panzer::CellData & panzer::PhysicsBlock::cellData | ( | ) | const |
Definition at line 770 of file Panzer_PhysicsBlock.cpp.
Teuchos::RCP< panzer::PhysicsBlock > panzer::PhysicsBlock::copyWithCellData | ( | const panzer::CellData & | cell_data | ) | const |
Build a copy of this physics block object but use the cell_data passed in by the user. This is useful for creating physics block objects that reside on the boundaries from physics blocks created for the volume.
Definition at line 776 of file Panzer_PhysicsBlock.cpp.
Teuchos::RCP< panzer::GlobalData > panzer::PhysicsBlock::globalData | ( | ) | const |
Definition at line 782 of file Panzer_PhysicsBlock.cpp.
|
inline |
Definition at line 273 of file Panzer_PhysicsBlock.hpp.
|
inline |
Definition at line 276 of file Panzer_PhysicsBlock.hpp.
|
inline |
Definition at line 280 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 303 of file Panzer_PhysicsBlock.cpp.
|
related |
Nonmember function for building the physics blocks from a Teuchos::ParameterList for a given list of element blocks. A unique physics block object is built for each element block even if multiple element blocks point to the same physics block.
|
related |
Nonmember function for reading and constructing physics blocks from a Teuchos::ParameterList for a given list of element blocks. A unique physics block object is built for each element block even if multiple element blocks point to the same physics block. The intialize
method must be called before the physics blocks are used.
|
related |
Nonmember function for searching and returning a spcific physics block given an element block id. Throws an erro if the physics block is not found.
[in] | element_block_id | The name of the corresponding element block that this function will search for in the physics block vector. |
[in] | physics_blocks | Vector of physics blocks ]param[in] throw_on_failure Optional parameter that determines if the function hsould throw on failure. Default is true. If set to false and the funtion fails to find the physics block, then a null RCP is returned. |
|
protected |
Definition at line 291 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 292 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 293 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 294 of file Panzer_PhysicsBlock.hpp.
|
protected |
store the input parameter list for copy ctors
Definition at line 296 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 297 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 298 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 300 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 301 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 302 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 303 of file Panzer_PhysicsBlock.hpp.
|
protected |
map of unique bases, key is the panzer::PureBasis::name() corresponding to its value
Definition at line 306 of file Panzer_PhysicsBlock.hpp.
|
protected |
map of unique integration rules, key is panzer::IntegrationRule::order() corresponding to its value
Definition at line 308 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 310 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 311 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 312 of file Panzer_PhysicsBlock.hpp.
|
protected |
Returns true for evaluation types that are active.
Definition at line 315 of file Panzer_PhysicsBlock.hpp.