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 198 of file Panzer_PhysicsBlock.cpp.
panzer::PhysicsBlock::PhysicsBlock | ( | const panzer::PhysicsBlock & | pb, |
const panzer::CellData & | cell_data | ||
) |
Definition at line 258 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 209 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 277 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterEquationSetEvaluators | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 395 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 426 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 453 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 488 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 515 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 620 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 552 of file Panzer_PhysicsBlock.cpp.
void panzer::PhysicsBlock::buildAndRegisterEquationSetEvaluatorsForType | ( | PHX::FieldManager< panzer::Traits > & | fm, |
const Teuchos::ParameterList & | user_data | ||
) | const |
Definition at line 315 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 336 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 358 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 387 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 409 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 440 of file Panzer_PhysicsBlock.hpp.
const std::vector< std::string > & panzer::PhysicsBlock::getDOFNames | ( | ) | const |
Definition at line 638 of file Panzer_PhysicsBlock.cpp.
const std::vector< panzer::StrPureBasisPair > & panzer::PhysicsBlock::getProvidedDOFs | ( | ) | const |
Definition at line 644 of file Panzer_PhysicsBlock.cpp.
const std::vector< std::vector< std::string > > & panzer::PhysicsBlock::getCoordinateDOFs | ( | ) | const |
Definition at line 650 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 656 of file Panzer_PhysicsBlock.cpp.
panzer::WorksetNeeds panzer::PhysicsBlock::getWorksetNeeds | ( | ) | const |
Build a workset needs object for this physics block.
Definition at line 662 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 699 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 706 of file Panzer_PhysicsBlock.cpp.
const shards::CellTopology panzer::PhysicsBlock::getBaseCellTopology | ( | ) | const |
Definition at line 712 of file Panzer_PhysicsBlock.cpp.
std::string panzer::PhysicsBlock::physicsBlockID | ( | ) | const |
Definition at line 720 of file Panzer_PhysicsBlock.cpp.
std::string panzer::PhysicsBlock::elementBlockID | ( | ) | const |
Definition at line 726 of file Panzer_PhysicsBlock.cpp.
const panzer::CellData & panzer::PhysicsBlock::cellData | ( | ) | const |
Definition at line 732 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 738 of file Panzer_PhysicsBlock.cpp.
Teuchos::RCP< panzer::GlobalData > panzer::PhysicsBlock::globalData | ( | ) | const |
Definition at line 744 of file Panzer_PhysicsBlock.cpp.
|
inline |
Definition at line 266 of file Panzer_PhysicsBlock.hpp.
|
inline |
Definition at line 269 of file Panzer_PhysicsBlock.hpp.
|
inline |
Definition at line 273 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 299 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 284 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 285 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 286 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 287 of file Panzer_PhysicsBlock.hpp.
|
protected |
store the input parameter list for copy ctors
Definition at line 289 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 290 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 291 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 |
Definition at line 295 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 296 of file Panzer_PhysicsBlock.hpp.
|
protected |
map of unique bases, key is the panzer::PureBasis::name() corresponding to its value
Definition at line 299 of file Panzer_PhysicsBlock.hpp.
|
protected |
map of unique integration rules, key is panzer::IntegrationRule::order() corresponding to its value
Definition at line 301 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 303 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 304 of file Panzer_PhysicsBlock.hpp.
|
protected |
Definition at line 305 of file Panzer_PhysicsBlock.hpp.