Panzer
Version of the Day
|
#include <Panzer_STK_ModelEvaluatorFactory.hpp>
Inherits ParameterListAcceptorDefaultBase.
Public Member Functions | |
void | buildObjects (const Teuchos::RCP< const Teuchos::Comm< int > > &comm, const Teuchos::RCP< panzer::GlobalData > &global_data, const Teuchos::RCP< const panzer::EquationSetFactory > &eqset_factory, const panzer::BCStrategyFactory &bc_factory, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, bool meConstructionOn=true) |
Builds the model evaluators for a panzer assembly. More... | |
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > | getPhysicsModelEvaluator () |
void | setUserWorksetFactory (Teuchos::RCP< panzer_stk::WorksetFactory > &user_wkst_factory) |
Set user defined workset factory. More... | |
Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > | getResponseLibrary () |
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > & | getPhysicsBlocks () const |
Teuchos::RCP< panzer_stk::STK_Interface > | getMesh () const |
Get mesh object used to build model evaluator. More... | |
Teuchos::RCP< panzer::GlobalIndexer > | getGlobalIndexer () const |
Get global indexer used to build model evaluator. More... | |
Teuchos::RCP< panzer::ConnManager > | getConnManager () const |
Get connection manager. More... | |
bool | isBlockedAssembly () const |
Is blocked assembly? More... | |
Teuchos::RCP< panzer::LinearObjFactory< panzer::Traits > > | getLinearObjFactory () const |
Get linear object factory used to build model evaluator. More... | |
bool | isTransient () const |
Teuchos::RCP< Thyra::ModelEvaluator< double > > | cloneWithNewPhysicsBlocks (const Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< ScalarT > > &solverFactory, const Teuchos::RCP< Teuchos::ParameterList > &physics_block_plist, const Teuchos::RCP< const panzer::EquationSetFactory > &eqset_factory, const panzer::BCStrategyFactory &bc_factory, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &user_cm_factory, bool is_transient, bool is_explicit, const Teuchos::Ptr< const Teuchos::ParameterList > &bc_list=Teuchos::null, const Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > &physics_me=Teuchos::null) const |
void | setupInitialConditions (Thyra::ModelEvaluator< ScalarT > &model, panzer::WorksetContainer &wkstContainer, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const panzer::LinearObjFactory< panzer::Traits > &lof, const Teuchos::ParameterList &closure_pl, const Teuchos::ParameterList &initial_cond_pl, const Teuchos::ParameterList &user_data_pl, bool write_dot_files, const std::string &dot_file_prefix) const |
Setup the initial conditions in a model evaluator. Note that this is entirely self contained. More... | |
void | writeInitialConditions (const Thyra::ModelEvaluator< ScalarT > &model, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const Teuchos::RCP< panzer::WorksetContainer > &wc, const Teuchos::RCP< const panzer::GlobalIndexer > &ugi, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof, const Teuchos::RCP< panzer_stk::STK_Interface > &mesh, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &closure_model_pl, const Teuchos::ParameterList &user_data_pl, int workset_size) const |
Write the initial conditions to exodus. Note that this is entirely self contained. More... | |
Teuchos::RCP< Thyra::ModelEvaluatorDefaultBase< double > > | buildPhysicsModelEvaluator (bool buildThyraME, const Teuchos::RCP< panzer::FieldManagerBuilder > &fmb, const Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > &rLibrary, const Teuchos::RCP< panzer::LinearObjFactory< panzer::Traits > > &lof, const std::vector< Teuchos::RCP< Teuchos::Array< std::string > > > &p_names, const std::vector< Teuchos::RCP< Teuchos::Array< double > > > &p_values, const Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< ScalarT > > &solverFactory, const Teuchos::RCP< panzer::GlobalData > &global_data, bool is_transient, double t_init) const |
bool | useDynamicCoordinates () const |
double | getInitialTime (Teuchos::ParameterList &transient_ic_params, const panzer_stk::STK_Interface &mesh) const |
Gets the initial time from either the input parameter list or an exodus file. More... | |
Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< double > > | buildLOWSFactory (bool blockedAssembly, const Teuchos::RCP< const panzer::GlobalIndexer > &globalIndexer, const Teuchos::RCP< panzer::ConnManager > &conn_manager, const Teuchos::RCP< panzer_stk::STK_Interface > &mesh, const Teuchos::RCP< const Teuchos::MpiComm< int > > &mpi_comm) const |
Teuchos::RCP< panzer::WorksetContainer > | getWorksetContainer () const |
Get the workset container associated with the mesh database. More... | |
void | addUserFieldsToMesh (panzer_stk::STK_Interface &mesh, const Teuchos::ParameterList &output_list) const |
Add the user fields specified by output_list to the mesh. More... | |
Teuchos::RCP< STK_MeshFactory > | buildSTKMeshFactory (const Teuchos::ParameterList &mesh_params) const |
build STK mesh factory from a mesh parameter list More... | |
void | finalizeMeshConstruction (const STK_MeshFactory &mesh_factory, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const Teuchos::MpiComm< int > mpi_comm, STK_Interface &mesh) const |
Protected Member Functions | |
Teuchos::RCP< panzer::FieldManagerBuilder > | buildFieldManagerBuilder (const Teuchos::RCP< panzer::WorksetContainer > &wc, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const std::vector< panzer::BC > &bcs, const panzer::EquationSetFactory &eqset_factory, const panzer::BCStrategyFactory &bc_factory, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &volume_cm_factory, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &bc_cm_factory, const Teuchos::ParameterList &closure_models, const panzer::LinearObjFactory< panzer::Traits > &lo_factory, const Teuchos::ParameterList &user_data, bool writeGraph, const std::string &graphPrefix, bool write_field_managers, const std::string &field_manager_prefix) const |
Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > | initializeSolnWriterResponseLibrary (const Teuchos::RCP< panzer::WorksetContainer > &wc, const Teuchos::RCP< const panzer::GlobalIndexer > &ugi, const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof, const Teuchos::RCP< panzer_stk::STK_Interface > &mesh) const |
void | finalizeSolnWriterResponseLibrary (panzer::ResponseLibrary< panzer::Traits > &rl, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &closure_models, int workset_size, Teuchos::ParameterList &user_data) const |
Overridden from ParameterListAcceptor | |
void | setParameterList (Teuchos::RCP< Teuchos::ParameterList > const ¶mList) |
Teuchos::RCP< const Teuchos::ParameterList > | getValidParameters () const |
Methods for building the solver | |
void | setNOXObserverFactory (const Teuchos::RCP< const panzer_stk::NOXObserverFactory > &nox_observer_factory) |
void | setRythmosObserverFactory (const Teuchos::RCP< const panzer_stk::RythmosObserverFactory > &rythmos_observer_factory) |
template<typename BuilderT > | |
int | addResponse (const std::string &responseName, const std::vector< panzer::WorksetDescriptor > &wkstDesc, const BuilderT &builder) |
void | buildResponses (const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const bool write_graphviz_file=false, const std::string &graphviz_file_prefix="") |
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > | getResponseOnlyModelEvaluator () |
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > | buildResponseOnlyModelEvaluator (const Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > &thyra_me, const Teuchos::RCP< panzer::GlobalData > &global_data, const Teuchos::RCP< Piro::RythmosSolver< ScalarT > > rythmosSolver=Teuchos::null, const Teuchos::Ptr< const panzer_stk::NOXObserverFactory > &in_nox_observer_factory=Teuchos::null, const Teuchos::Ptr< const panzer_stk::RythmosObserverFactory > &in_rythmos_observer_factory=Teuchos::null) |
Definition at line 104 of file Panzer_STK_ModelEvaluatorFactory.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::setParameterList | ( | Teuchos::RCP< Teuchos::ParameterList > const & | paramList | ) |
Definition at line 116 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< const Teuchos::ParameterList > panzer_stk::ModelEvaluatorFactory< ScalarT >::getValidParameters | ( | ) | const |
Definition at line 132 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::buildObjects | ( | const Teuchos::RCP< const Teuchos::Comm< int > > & | comm, |
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
const Teuchos::RCP< const panzer::EquationSetFactory > & | eqset_factory, | ||
const panzer::BCStrategyFactory & | bc_factory, | ||
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | cm_factory, | ||
bool | meConstructionOn = true |
||
) |
Builds the model evaluators for a panzer assembly.
[in] | comm | (Required) Teuchos communicator. Must be non-null. |
[in] | global_data | (Required) A fully constructed (all members allocated) global data object used to control parameter library and output support. Must be non-null. |
[in] | eqset_factory | (Required) Equation set factory to provide user defined equation sets. |
[in] | bc_factory | (Required) Boundary condition factory to provide user defined boundary conditions. |
[in] | cm_factory | (Required) Closure model factory to provide user defined closure models. |
Definition at line 245 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > panzer_stk::ModelEvaluatorFactory< ScalarT >::getPhysicsModelEvaluator | ( | ) |
Definition at line 1124 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::setNOXObserverFactory | ( | const Teuchos::RCP< const panzer_stk::NOXObserverFactory > & | nox_observer_factory | ) |
Definition at line 1132 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::setRythmosObserverFactory | ( | const Teuchos::RCP< const panzer_stk::RythmosObserverFactory > & | rythmos_observer_factory | ) |
Definition at line 1138 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
int panzer_stk::ModelEvaluatorFactory< ScalarT >::addResponse | ( | const std::string & | responseName, |
const std::vector< panzer::WorksetDescriptor > & | wkstDesc, | ||
const BuilderT & | builder | ||
) |
Definition at line 339 of file Panzer_STK_ModelEvaluatorFactory.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::buildResponses | ( | const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | cm_factory, |
const bool | write_graphviz_file = false , |
||
const std::string & | graphviz_file_prefix = "" |
||
) |
Definition at line 1581 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > panzer_stk::ModelEvaluatorFactory< ScalarT >::getResponseOnlyModelEvaluator | ( | ) |
Definition at line 1150 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > panzer_stk::ModelEvaluatorFactory< ScalarT >::buildResponseOnlyModelEvaluator | ( | const Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > & | thyra_me, |
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
const Teuchos::RCP< Piro::RythmosSolver< ScalarT > > | rythmosSolver = Teuchos::null , |
||
const Teuchos::Ptr< const panzer_stk::NOXObserverFactory > & | in_nox_observer_factory = Teuchos::null , |
||
const Teuchos::Ptr< const panzer_stk::RythmosObserverFactory > & | in_rythmos_observer_factory = Teuchos::null |
||
) |
Definition at line 1160 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::setUserWorksetFactory | ( | Teuchos::RCP< panzer_stk::WorksetFactory > & | user_wkst_factory | ) |
Set user defined workset factory.
Definition at line 1144 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > panzer_stk::ModelEvaluatorFactory< ScalarT >::getResponseLibrary | ( | ) |
Definition at line 1255 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > & panzer_stk::ModelEvaluatorFactory< ScalarT >::getPhysicsBlocks | ( | ) | const |
Definition at line 1264 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
inline |
Get mesh object used to build model evaluator.
Definition at line 164 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
inline |
Get global indexer used to build model evaluator.
Definition at line 168 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
inline |
Get connection manager.
Definition at line 172 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
inline |
Is blocked assembly?
Definition at line 176 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
inline |
Get linear object factory used to build model evaluator.
Definition at line 180 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
inline |
Definition at line 183 of file Panzer_STK_ModelEvaluatorFactory.hpp.
Teuchos::RCP< Thyra::ModelEvaluator< double > > panzer_stk::ModelEvaluatorFactory< ScalarT >::cloneWithNewPhysicsBlocks | ( | const Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< ScalarT > > & | solverFactory, |
const Teuchos::RCP< Teuchos::ParameterList > & | physics_block_plist, | ||
const Teuchos::RCP< const panzer::EquationSetFactory > & | eqset_factory, | ||
const panzer::BCStrategyFactory & | bc_factory, | ||
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | user_cm_factory, | ||
bool | is_transient, | ||
bool | is_explicit, | ||
const Teuchos::Ptr< const Teuchos::ParameterList > & | bc_list = Teuchos::null , |
||
const Teuchos::RCP< Thyra::ModelEvaluator< ScalarT > > & | physics_me = Teuchos::null |
||
) | const |
Clone the internal model evaluator, but use new physics blocks. Note that the physics blocks must be in some sense compatible with the original set.
Definition at line 1309 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::setupInitialConditions | ( | Thyra::ModelEvaluator< ScalarT > & | model, |
panzer::WorksetContainer & | wkstContainer, | ||
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > & | physicsBlocks, | ||
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | cm_factory, | ||
const panzer::LinearObjFactory< panzer::Traits > & | lof, | ||
const Teuchos::ParameterList & | closure_pl, | ||
const Teuchos::ParameterList & | initial_cond_pl, | ||
const Teuchos::ParameterList & | user_data_pl, | ||
bool | write_dot_files, | ||
const std::string & | dot_file_prefix | ||
) | const |
Setup the initial conditions in a model evaluator. Note that this is entirely self contained.
Definition at line 846 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::writeInitialConditions | ( | const Thyra::ModelEvaluator< ScalarT > & | model, |
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > & | physicsBlocks, | ||
const Teuchos::RCP< panzer::WorksetContainer > & | wc, | ||
const Teuchos::RCP< const panzer::GlobalIndexer > & | ugi, | ||
const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > & | lof, | ||
const Teuchos::RCP< panzer_stk::STK_Interface > & | mesh, | ||
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > & | cm_factory, | ||
const Teuchos::ParameterList & | closure_model_pl, | ||
const Teuchos::ParameterList & | user_data_pl, | ||
int | workset_size | ||
) | const |
Write the initial conditions to exodus. Note that this is entirely self contained.
Definition at line 916 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< Thyra::ModelEvaluatorDefaultBase< double > > panzer_stk::ModelEvaluatorFactory< ScalarT >::buildPhysicsModelEvaluator | ( | bool | buildThyraME, |
const Teuchos::RCP< panzer::FieldManagerBuilder > & | fmb, | ||
const Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > & | rLibrary, | ||
const Teuchos::RCP< panzer::LinearObjFactory< panzer::Traits > > & | lof, | ||
const std::vector< Teuchos::RCP< Teuchos::Array< std::string > > > & | p_names, | ||
const std::vector< Teuchos::RCP< Teuchos::Array< double > > > & | p_values, | ||
const Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< ScalarT > > & | solverFactory, | ||
const Teuchos::RCP< panzer::GlobalData > & | global_data, | ||
bool | is_transient, | ||
double | t_init | ||
) | const |
This method is to assist with construction of the model evaluators.
Definition at line 1444 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
inline |
Definition at line 240 of file Panzer_STK_ModelEvaluatorFactory.hpp.
double panzer_stk::ModelEvaluatorFactory< ScalarT >::getInitialTime | ( | Teuchos::ParameterList & | transient_ic_params, |
const panzer_stk::STK_Interface & | mesh | ||
) | const |
Gets the initial time from either the input parameter list or an exodus file.
[in] | transient_ic_params | ParameterList that determines where to get the initial time value. |
[in] | mesh | STK Mesh database used if the time value should come from the exodus file |
Definition at line 1475 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< Thyra::LinearOpWithSolveFactoryBase< double > > panzer_stk::ModelEvaluatorFactory< ScalarT >::buildLOWSFactory | ( | bool | blockedAssembly, |
const Teuchos::RCP< const panzer::GlobalIndexer > & | globalIndexer, | ||
const Teuchos::RCP< panzer::ConnManager > & | conn_manager, | ||
const Teuchos::RCP< panzer_stk::STK_Interface > & | mesh, | ||
const Teuchos::RCP< const Teuchos::MpiComm< int > > & | mpi_comm | ||
) | const |
Definition at line 1541 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
inline |
Get the workset container associated with the mesh database.
Definition at line 263 of file Panzer_STK_ModelEvaluatorFactory.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::addUserFieldsToMesh | ( | panzer_stk::STK_Interface & | mesh, |
const Teuchos::ParameterList & | output_list | ||
) | const |
Add the user fields specified by output_list to the mesh.
Definition at line 762 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
Teuchos::RCP< panzer_stk::STK_MeshFactory > panzer_stk::ModelEvaluatorFactory< ScalarT >::buildSTKMeshFactory | ( | const Teuchos::ParameterList & | mesh_params | ) | const |
build STK mesh factory from a mesh parameter list
build STK mesh from a mesh parameter list
Definition at line 962 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
void panzer_stk::ModelEvaluatorFactory< ScalarT >::finalizeMeshConstruction | ( | const STK_MeshFactory & | mesh_factory, |
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > & | physicsBlocks, | ||
const Teuchos::MpiComm< int > | mpi_comm, | ||
STK_Interface & | mesh | ||
) | const |
Definition at line 1052 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
protected |
Definition at line 1275 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
protected |
Definition at line 1509 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
protected |
Definition at line 1529 of file Panzer_STK_ModelEvaluatorFactory_impl.hpp.
|
private |
Definition at line 312 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 313 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 315 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 316 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 318 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 319 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 320 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 321 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 322 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 323 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 324 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 325 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 326 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 328 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 329 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 330 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 331 of file Panzer_STK_ModelEvaluatorFactory.hpp.
|
private |
Definition at line 333 of file Panzer_STK_ModelEvaluatorFactory.hpp.