Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
panzer::ModelEvaluator< Scalar > Class Template Reference

#include <Panzer_ModelEvaluator.hpp>

Inherits StateFuncModelEvaluatorBase< Scalar >.

Classes

struct  ParameterObject
 
struct  ResponseObject
 

Public Member Functions

template<typename EvalT >
void disableEvaluationType ()
 
void buildVolumeFieldManagers (const bool value)
 
void buildBCFieldManagers (const bool value)
 
void setupModel (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 Teuchos::ParameterList &user_data, bool writeGraph=false, const std::string &graphPrefix="", const Teuchos::ParameterList &me_params=Teuchos::ParameterList())
 
int addParameter (const std::string &name, const Scalar &initial)
 
int addParameter (const Teuchos::Array< std::string > &names, const Teuchos::Array< Scalar > &initialValues)
 
int addDistributedParameter (const std::string &name, const Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > &vs, const Teuchos::RCP< GlobalEvaluationData > &ged, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &initial, const Teuchos::RCP< const GlobalIndexer > &ugi=Teuchos::null)
 
void addNonParameterGlobalEvaluationData (const std::string &name, const Teuchos::RCP< GlobalEvaluationData > &ged)
 
int addFlexibleResponse (const std::string &responseName, const std::vector< WorksetDescriptor > &wkst_desc, const Teuchos::RCP< ResponseMESupportBuilderBase > &builder)
 
template<typename ResponseEvaluatorFactory_BuilderT >
int addResponse (const std::string &responseName, const std::vector< WorksetDescriptor > &wkst_desc, const ResponseEvaluatorFactory_BuilderT &builder)
 
void buildResponses (const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::EquationSetFactory &eqset_factory, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &closure_models, const Teuchos::ParameterList &user_data, const bool write_graphviz_file=false, const std::string &graphviz_file_prefix="")
 
void buildResponses (const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &cm_factory, const Teuchos::ParameterList &closure_models, const Teuchos::ParameterList &user_data, const bool write_graphviz_file=false, const std::string &graphviz_file_prefix="")
 
void buildDistroParamDfDp_RL (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 > &cm_factory, const Teuchos::ParameterList &closure_models, const Teuchos::ParameterList &user_data, const bool write_graphviz_file=false, const std::string &graphviz_file_prefix="")
 
void buildDistroParamDgDp_RL (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 > &cm_factory, const Teuchos::ParameterList &closure_models, const Teuchos::ParameterList &user_data, const bool write_graphviz_file=false, const std::string &graphviz_file_prefix="")
 
void setOneTimeDirichletBeta (const Scalar &beta) const
 
void applyDirichletBCs (const Teuchos::RCP< Thyra::VectorBase< Scalar > > &x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &f) const
 
void setupAssemblyInArgs (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, panzer::AssemblyEngineInArgs &ae_inargs) const
 
panzer::AssemblyEngine_TemplateManager
< panzer::Traits
getAssemblyEngineTemplateManager () const
 return a copy of the model evaluators template manager, this is shallow class so pass by value More...
 
Teuchos::RCP
< panzer::ResponseLibrary
< panzer::Traits > > 
getResponseLibrary () const
 
int getXTangentVectorIndex (const int index) const
 
int getXDotTangentVectorIndex (const int index) const
 
Teuchos::RCP< const
Thyra::VectorBase< Scalar > > 
get_parameter_vector (int index) const
 
void evalModel_D2gDx2 (int rIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &D2gDx2) const
 
void evalModel_D2gDp2 (int rIndex, int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &D2gDp2) const
 
void evalModel_D2gDpDx (int rIndex, int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &D2gDpDx) const
 
void evalModel_D2gDxDp (int rIndex, int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_p, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &D2gDxDp) const
 
void evalModel_D2fDx2 (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &D2fDx2) const
 
void evalModel_D2fDp2 (int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &D2fDp2) const
 
void evalModel_D2fDpDx (int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_x, const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &D2fDpDx) const
 
void evalModel_D2fDxDp (int pIndex, const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &delta_p, const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &D2fDxDp) const
 

Protected Member Functions

virtual void evalModelImpl_basic (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Evaluate a simple model, meaning a residual and a jacobian, no fancy stochastic galerkin or multipoint. More...
 
virtual void evalModelImpl_basic_g (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Construct a simple response dicatated by this set of out args. More...
 
virtual void evalModelImpl_basic_dgdx (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
virtual void evalModelImpl_basic_dgdp_scalar (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
virtual void evalModelImpl_basic_dgdp_distro (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
virtual void evalModelImpl_basic_dfdp_scalar (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
virtual void evalModelImpl_basic_dfdp_scalar_fd (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
virtual void evalModelImpl_basic_dfdp_distro (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
bool required_basic_g (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Does this set of out args require a simple response? More...
 
bool required_basic_dgdx (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Are their required responses in the out args? DgDx. More...
 
bool required_basic_dgdp_scalar (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Are their required responses in the out args? DgDp. More...
 
bool required_basic_dgdp_distro (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Are their required responses in the out args? DgDp. More...
 
bool required_basic_dfdp_scalar (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Are derivatives of the residual with respect to the scalar parameters in the out args? DfDp. More...
 
bool required_basic_dfdp_distro (const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 Are derivatives of the residual with respect to the distributed parameters in the out args? DfDp. More...
 
void initializeNominalValues () const
 Initialize the nominal values with good starting conditions. More...
 
void setParameters (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs) const
 
void resetParameters () const
 

Private Member Functions

Teuchos::RCP< ParameterObjectcreateScalarParameter (const Teuchos::Array< std::string > &names, const Teuchos::Array< Scalar > &in_values) const
 
Teuchos::RCP< ParameterObjectcreateDistributedParameter (const std::string &key, const Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > &vs, const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &initial, const Teuchos::RCP< const GlobalIndexer > &ugi) const
 

Private Attributes

double t_init_
 
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
x_space_
 
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
f_space_
 
Thyra::ModelEvaluatorBase::InArgs
< Scalar > 
prototypeInArgs_
 
Thyra::ModelEvaluatorBase::OutArgs
< Scalar > 
prototypeOutArgs_
 
Thyra::ModelEvaluatorBase::InArgs
< Scalar > 
nominalValues_
 
panzer::AssemblyEngine_TemplateManager
< panzer::Traits
ae_tm_
 
std::vector< Teuchos::RCP
< ParameterObject > > 
parameters_
 
std::vector< Teuchos::RCP
< Thyra::VectorSpaceBase
< double > > > 
tangent_space_
 
int num_me_parameters_
 
bool do_fd_dfdp_
 
double fd_perturb_size_
 
bool require_in_args_refresh_
 
bool require_out_args_refresh_
 
Teuchos::RCP
< panzer::ResponseLibrary
< panzer::Traits > > 
responseLibrary_
 
std::vector< Teuchos::RCP
< ResponseObject > > 
responses_
 
Teuchos::RCP< panzer::GlobalDataglobal_data_
 
bool build_transient_support_
 
Teuchos::RCP< const
panzer::LinearObjFactory
< panzer::Traits > > 
lof_
 
Teuchos::RCP
< panzer::LinearObjContainer
ghostedContainer_
 
Teuchos::RCP
< ReadOnlyVector_GlobalEvaluationData
xContainer_
 
Teuchos::RCP
< ReadOnlyVector_GlobalEvaluationData
xdotContainer_
 
Teuchos::RCP< const
Thyra::LinearOpWithSolveFactoryBase
< Scalar > > 
solverFactory_
 
GlobalEvaluationDataContainer nonParamGlobalEvaluationData_
 
GlobalEvaluationDataContainer distrParamGlobalEvaluationData_
 
bool oneTimeDirichletBeta_on_
 
Scalar oneTimeDirichletBeta_
 
bool build_volume_field_managers_
 
bool build_bc_field_managers_
 
std::vector< bool > active_evaluation_types_
 
unsigned long long write_matrix_count_
 

Constructors/Initializers/Accessors

 ModelEvaluator (const Teuchos::RCP< panzer::FieldManagerBuilder > &fmb, const Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > &rLibrary, const Teuchos::RCP< const 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< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > &solverFactory, const Teuchos::RCP< panzer::GlobalData > &global_data, bool build_transient_support, double t_init)
 
 ModelEvaluator (const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &lof, const Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > &solverFactory, const Teuchos::RCP< panzer::GlobalData > &global_data, bool build_transient_support, double t_init)
 
 ModelEvaluator ()
 

Public functions overridden from ModelEvaulator.

Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
get_x_space () const override
 
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
get_f_space () const override
 
Teuchos::RCP< const
Teuchos::Array< std::string > > 
get_p_names (int i) const override
 
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
get_p_space (int i) const override
 
Teuchos::ArrayView< const
std::string > 
get_g_names (int i) const override
 
const std::string & get_g_name (int i) const
 
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
get_g_space (int i) const override
 
Teuchos::RCP
< Thyra::LinearOpBase< Scalar > > 
create_W_op () const override
 
Teuchos::RCP< const
Thyra::LinearOpWithSolveFactoryBase
< Scalar > > 
get_W_factory () const override
 
Teuchos::RCP
< Thyra::LinearOpBase< Scalar > > 
create_DfDp_op (int i) const override
 
Thyra::ModelEvaluatorBase::InArgs
< Scalar > 
createInArgs () const override
 
Thyra::ModelEvaluatorBase::InArgs
< Scalar > 
getNominalValues () const override
 

Private functions overridden from ModelEvaulatorDefaultBase.

Thyra::ModelEvaluatorBase::OutArgs
< Scalar > 
createOutArgsImpl () const override
 
virtual void evalModelImpl (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const override
 

Detailed Description

template<typename Scalar>
class panzer::ModelEvaluator< Scalar >

Definition at line 73 of file Panzer_ModelEvaluator.hpp.

Constructor & Destructor Documentation

template<typename Scalar >
panzer::ModelEvaluator< Scalar >::ModelEvaluator ( const Teuchos::RCP< panzer::FieldManagerBuilder > &  fmb,
const Teuchos::RCP< panzer::ResponseLibrary< panzer::Traits > > &  rLibrary,
const Teuchos::RCP< const 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< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > &  solverFactory,
const Teuchos::RCP< panzer::GlobalData > &  global_data,
bool  build_transient_support,
double  t_init 
)

Definition at line 86 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
panzer::ModelEvaluator< Scalar >::ModelEvaluator ( const Teuchos::RCP< const panzer::LinearObjFactory< panzer::Traits > > &  lof,
const Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > &  solverFactory,
const Teuchos::RCP< panzer::GlobalData > &  global_data,
bool  build_transient_support,
double  t_init 
)

Definition at line 148 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
panzer::ModelEvaluator< Scalar >::ModelEvaluator ( )

Definition at line 194 of file Panzer_ModelEvaluator_impl.hpp.

Member Function Documentation

template<typename Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > panzer::ModelEvaluator< Scalar >::get_x_space ( ) const
override

Definition at line 203 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > panzer::ModelEvaluator< Scalar >::get_f_space ( ) const
override

Definition at line 211 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< const Teuchos::Array< std::string > > panzer::ModelEvaluator< Scalar >::get_p_names ( int  i) const
override

Definition at line 218 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > panzer::ModelEvaluator< Scalar >::get_p_space ( int  i) const
override

Definition at line 247 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::ArrayView< const std::string > panzer::ModelEvaluator< Scalar >::get_g_names ( int  i) const
override

Definition at line 264 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
const std::string & panzer::ModelEvaluator< Scalar >::get_g_name ( int  i) const

Definition at line 274 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > panzer::ModelEvaluator< Scalar >::get_g_space ( int  i) const
override

Definition at line 284 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > panzer::ModelEvaluator< Scalar >::create_W_op ( ) const
override

Definition at line 731 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > panzer::ModelEvaluator< Scalar >::get_W_factory ( ) const
override

Definition at line 743 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > panzer::ModelEvaluator< Scalar >::create_DfDp_op ( int  i) const
override

Definition at line 751 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::InArgs< Scalar > panzer::ModelEvaluator< Scalar >::createInArgs ( ) const
override

Definition at line 294 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::InArgs< Scalar > panzer::ModelEvaluator< Scalar >::getNominalValues ( ) const
override

Definition at line 301 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
template<typename EvalT >
void panzer::ModelEvaluator< Scalar >::disableEvaluationType ( )
inline

Disable an evaluation type from AssemblyEngine_TemplateManager, FieldManagerBuilder and PhysicsBlock objects. This will prevent the allocation of unused resources.

Definition at line 147 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildVolumeFieldManagers ( const bool  value)

If set to false, disables building volume field managers to save memory if not needed. Must be called BEFORE setupModel() is called. Defaults to true.

Definition at line 395 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildBCFieldManagers ( const bool  value)

If set to false, disables building bc field managers to save memory if not needed. Must be called BEFORE setupModel() is called. Defaults to true.

Definition at line 402 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::setupModel ( 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 Teuchos::ParameterList user_data,
bool  writeGraph = false,
const std::string &  graphPrefix = "",
const Teuchos::ParameterList me_params = Teuchos::ParameterList() 
)

Definition at line 409 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::addParameter ( const std::string &  name,
const Scalar &  initial 
)

Add a simple (i.e. nondistributed) parameter to the model evaluator.

Note that these parameters will automatically use the parameter library passed into the model evaluator object through the GlobalData.

Parameters
[in]nameName of the parameter
[in]initialInitial (default) condition for this parameter
Returns
The index associated with this parameter for accessing it through the ModelEvaluator interface.
Note
The implementation for this is a call to the Array version of addParameter

Definition at line 802 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::addParameter ( const Teuchos::Array< std::string > &  names,
const Teuchos::Array< Scalar > &  initialValues 
)

Add a simple (i.e. nondistributed) parameter to the model evaluator.

Note that these parameters will automatically use the parameter library passed into the model evaluator object through the GlobalData.

Parameters
[in]namesNames of the parameter
[in]initialValuesInitial values for the parameters
Returns
The index associated with this parameter for accessing it through the ModelEvaluator interface.

Definition at line 815 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::addDistributedParameter ( const std::string &  name,
const Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > &  vs,
const Teuchos::RCP< GlobalEvaluationData > &  ged,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  initial,
const Teuchos::RCP< const GlobalIndexer > &  ugi = Teuchos::null 
)

Add a distributed parameter to the model evaluator

Distributed parameters are special in that they most likely will require a global to ghost call before being used in the evaluator. This function registers the parameter and any needed machinery to perform the global to ghost call.

Parameters
[in]nameName of the distributed parameter
[in]vsVector space that this corresponds to
[in]gedGlobal evaluation data object that handles ghosting
[in]initialInitial value to use for this parameter (defaults in the equation set)
[in]ugiUnique global indexer used for this parameter. Useful in constructing derivatives.
Returns
The index associated with this parameter for accessing it through the ModelEvaluator interface.

Definition at line 851 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::addNonParameterGlobalEvaluationData ( const std::string &  name,
const Teuchos::RCP< GlobalEvaluationData > &  ged 
)

Add a global evaluation data object that will be filled as a side effect when evalModel is called. This is useful for building things like auxiliary operators used in block preconditioning. This will not be used as a parameter (or response) to the model evaluator.

Parameters
[in]nameName to associate with global evaluation data object
[in]gedPointer to a global evaluation data object

Definition at line 872 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::addFlexibleResponse ( const std::string &  responseName,
const std::vector< WorksetDescriptor > &  wkst_desc,
const Teuchos::RCP< ResponseMESupportBuilderBase > &  builder 
)

Add a response specified by a list of WorksetDescriptor objects. The specifics of the response are specified by the response factory builder. This version supports computing derivatives with respect to both the state ('x') and control ('p') variables and is thus ``flexible''.

NOTE: Response factories must use a response of type ResponseMESupportBase. This is how the model evaluator parses and puts responses in the right location. If this condition is violated the evalModel call will fail. Furthermore, this method cannot be called after buildRespones has been called.

Parameters
[in]responseNameName of the response to be added.
[in]wkst_descA vector of descriptors describing the types of elements that make up the response.
[in]builderBuilder that builds the correct response object.
Returns
The index associated with this response for accessing it through the ModelEvaluator interface.

Definition at line 880 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
template<typename ResponseEvaluatorFactory_BuilderT >
int panzer::ModelEvaluator< Scalar >::addResponse ( const std::string &  responseName,
const std::vector< WorksetDescriptor > &  wkst_desc,
const ResponseEvaluatorFactory_BuilderT &  builder 
)

Add a response specified by a list of WorksetDescriptor objects. The specifics of the response are specified by the response factory builder.

NOTE: Response factories must use a response of type ResponseMESupportBase. This is how the model evaluator parses and puts responses in the right location. If this condition is violated the evalModel call will fail. Furthermore, this method cannot be called after buildRespones has been called.

Parameters
[in]responseNameName of the response to be added.
[in]wkst_descA vector of descriptors describing the types of elements that make up the response.
[in]builderBuilder that builds the correct response object.
Returns
The index associated with this response for accessing it through the ModelEvaluator interface.

Definition at line 720 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildResponses ( const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &  physicsBlocks,
const panzer::EquationSetFactory eqset_factory,
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &  cm_factory,
const Teuchos::ParameterList closure_models,
const Teuchos::ParameterList user_data,
const bool  write_graphviz_file = false,
const std::string &  graphviz_file_prefix = "" 
)
inline

Build all the responses set on the model evaluator. Once this method is called no other responses can be added. An exception is thrown if they are.

Definition at line 280 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildResponses ( const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &  physicsBlocks,
const panzer::ClosureModelFactory_TemplateManager< panzer::Traits > &  cm_factory,
const Teuchos::ParameterList closure_models,
const Teuchos::ParameterList user_data,
const bool  write_graphviz_file = false,
const std::string &  graphviz_file_prefix = "" 
)
inline

Build all the responses set on the model evaluator. Once this method is called no other responses can be added. An exception is thrown if they are.

Definition at line 304 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildDistroParamDfDp_RL ( 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 > &  cm_factory,
const Teuchos::ParameterList closure_models,
const Teuchos::ParameterList user_data,
const bool  write_graphviz_file = false,
const std::string &  graphviz_file_prefix = "" 
)

This method builds the response libraries that build the dfdp sensitivities for the distributed parameters if requested. Note that in general the user is expected to call this through setupModel and not call it directly.

Definition at line 2315 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::buildDistroParamDgDp_RL ( 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 > &  cm_factory,
const Teuchos::ParameterList closure_models,
const Teuchos::ParameterList user_data,
const bool  write_graphviz_file = false,
const std::string &  graphviz_file_prefix = "" 
)

This method builds the response libraries that build the dgdp sensitivities for the distributed parameters if requested. This only applies to "flexible" responses. Note that in general the user is expected to call this through setupModel and not call it directly.

Definition at line 2366 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::setOneTimeDirichletBeta ( const Scalar &  beta) const

This function is intended for experts only, it allows for a beta to be set for the dirichlet conditions only. This allows the dirichlet condition to be propagated to the mass matrix. The reason it is one time only is that it breaks encapsulation, and should be only used if absolutely neccessary.

Parameters
[in]betaValue of beta to use.

Definition at line 2434 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::applyDirichletBCs ( const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  x,
const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  f 
) const

Apply the dirichlet boundary conditions to the vector "f" using the "x" values as the current solution.

Definition at line 898 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::setupAssemblyInArgs ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
panzer::AssemblyEngineInArgs ae_inargs 
) const

Setup all the assembly input arguments required by "inArgs".

Parameters
[in]inArgsModel evalutor input arguments
in/out]ae_inArgs Assembly engine input arguments.

Definition at line 486 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
panzer::AssemblyEngine_TemplateManager<panzer::Traits> panzer::ModelEvaluator< Scalar >::getAssemblyEngineTemplateManager ( ) const
inline

return a copy of the model evaluators template manager, this is shallow class so pass by value

Returns
The AssemblyEngine template manager

Definition at line 387 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits> > panzer::ModelEvaluator< Scalar >::getResponseLibrary ( ) const
inline

Definition at line 391 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::getXTangentVectorIndex ( const int  index) const
inline

Returns the x tangent vector index for a given parameter index

Definition at line 396 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::getXDotTangentVectorIndex ( const int  index) const
inline

Returns the xdot tangent vector index for a given parameter index

Definition at line 407 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<const Thyra::VectorBase<Scalar> > panzer::ModelEvaluator< Scalar >::get_parameter_vector ( int  index) const
inline

Initializes the given vector with current values of the parameters

Definition at line 418 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2gDx2 ( int  rIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  D2gDx2 
) const

Compute second (x) derivative of the response in the direction delta_x.

Parameters
[in]rIndexResponse to differentiate
[in]inArgsInput arguments that sets the state
[in]delta_xDirection to take the derivative with respect to.
[out]D2gDx2Result vector allocated by get_x_space().

Definition at line 971 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2gDp2 ( int  rIndex,
int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  D2gDp2 
) const

Compute second (p) derivative of the response in the direction delta_p.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_pDirection to take the derivative with respect to.
[out]D2gDp2Result vector allocated by get_p_space(pIndex).

Definition at line 1068 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2gDpDx ( int  rIndex,
int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  D2gDpDx 
) const

Compute second (p) derivative of the response in the direction delta_x.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_xDirection to take the derivative with respect to.
[out]D2gDpDxResult vector allocated by get_x_space().

Definition at line 1122 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2gDxDp ( int  rIndex,
int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_p,
const Teuchos::RCP< Thyra::VectorBase< Scalar > > &  D2gDxDp 
) const

Compute second (p) derivative of the response in the direction delta_x.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_pDirection to take the derivative with respect to.
[out]D2gDxDpResult vector allocated by get_x_space().

Definition at line 1018 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2fDx2 ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &  D2fDx2 
) const

Compute second (x) derivative of the residual in the direction delta_x.

Parameters
[in]rIndexResponse to differentiate
[in]inArgsInput arguments that sets the state
[in]delta_xDirection to take the derivative with respect to.
[out]D2fDx2Result vector allocated by get_x_space().

Definition at line 1176 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2fDp2 ( int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &  D2fDp2 
) const

Compute second (p) derivative of the residual in the direction delta_p.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_pDirection to take the derivative with respect to.
[out]D2fDp2Result vector allocated by get_p_space(pIndex).

Definition at line 1427 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2fDpDx ( int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_x,
const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &  D2fDpDx 
) const

Compute second (p) derivative of the residual in the direction delta_x.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_xDirection to take the derivative with respect to.
[out]D2fDpDxResult vector allocated by get_x_space().

Definition at line 1376 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModel_D2fDxDp ( int  pIndex,
const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  delta_p,
const Teuchos::RCP< Thyra::LinearOpBase< Scalar > > &  D2fDxDp 
) const

Compute second (p) derivative of the residual in the direction delta_p.

Parameters
[in]rIndexResponse to differentiate
[in]pIndexParameter to differentiate with respect to
[in]inArgsInput arguments that sets the state
[in]delta_pDirection to take the derivative with respect to.
[out]D2fDxDpResult vector allocated by get_x_space().

Definition at line 1274 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::OutArgs< Scalar > panzer::ModelEvaluator< Scalar >::createOutArgsImpl ( ) const
overrideprotected

Definition at line 672 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
overrideprotectedvirtual

Definition at line 1478 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

Evaluate a simple model, meaning a residual and a jacobian, no fancy stochastic galerkin or multipoint.

Definition at line 1512 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_g ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

Construct a simple response dicatated by this set of out args.

Definition at line 1679 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dgdx ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of responses dgdx

Note
This method should (basically) be a no-op if required_basic_dgdx(outArgs)==false. However, for efficiency this is not checked.

Definition at line 1716 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dgdp_scalar ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of responses dgdp (scalar) defined as dg/dx * dx/dp + dg/dp

Note
This method should (basically) be a no-op if required_basic_dgdp_scalar(outArgs)==false. However, for efficiency this is not checked.

Definition at line 1762 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dgdp_distro ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of responses dgdp (distributed)

Note
This method should (basically) be a no-op if required_basic_dgdx_distro(outArgs)==false. However, for efficiency this is not checked.

Definition at line 1847 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dfdp_scalar ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of dfdp (tangent) defined as df/dx * dx/dp + df/dp

Note
This method should (basically) be a no-op if required_basic_dfdp_scalar(outArgs)==false. However, for efficiency this is not checked.

Definition at line 1906 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dfdp_scalar_fd ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of dfdp (tangent) defined as df/dx * dx/dp + df/dp using finite-differences

Note
This method should (basically) be a no-op if required_basic_dfdp_scalar(outArgs)==false. However, for efficiency this is not checked.

Definition at line 2022 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::evalModelImpl_basic_dfdp_distro ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) const
protectedvirtual

handles evaluation of dfdp

Note
This method should (basically) be a no-op if required_basic_dfdp_distro(outArgs)==false. However, for efficiency this is not checked.

Definition at line 2126 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_g ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Does this set of out args require a simple response?

Definition at line 2181 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_dgdx ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Are their required responses in the out args? DgDx.

Definition at line 2193 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_dgdp_scalar ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Are their required responses in the out args? DgDp.

Definition at line 2213 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_dgdp_distro ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Are their required responses in the out args? DgDp.

Definition at line 2239 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_dfdp_scalar ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Are derivatives of the residual with respect to the scalar parameters in the out args? DfDp.

Definition at line 2265 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::required_basic_dfdp_distro ( const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &  outArgs) const
protected

Are derivatives of the residual with respect to the distributed parameters in the out args? DfDp.

Definition at line 2290 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::initializeNominalValues ( ) const
protected

Initialize the nominal values with good starting conditions.

Definition at line 339 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::setParameters ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  inArgs) const
protected

Definition at line 2517 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
void panzer::ModelEvaluator< Scalar >::resetParameters ( ) const
protected

Definition at line 2539 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< typename panzer::ModelEvaluator< Scalar >::ParameterObject > panzer::ModelEvaluator< Scalar >::createScalarParameter ( const Teuchos::Array< std::string > &  names,
const Teuchos::Array< Scalar > &  in_values 
) const
private

Definition at line 2443 of file Panzer_ModelEvaluator_impl.hpp.

template<typename Scalar >
Teuchos::RCP< typename panzer::ModelEvaluator< Scalar >::ParameterObject > panzer::ModelEvaluator< Scalar >::createDistributedParameter ( const std::string &  key,
const Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > &  vs,
const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &  initial,
const Teuchos::RCP< const GlobalIndexer > &  ugi 
) const
private

Definition at line 2493 of file Panzer_ModelEvaluator_impl.hpp.

Member Data Documentation

template<typename Scalar >
double panzer::ModelEvaluator< Scalar >::t_init_
private

Definition at line 666 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar> > panzer::ModelEvaluator< Scalar >::x_space_
private

Definition at line 668 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar> > panzer::ModelEvaluator< Scalar >::f_space_
private

Definition at line 669 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::InArgs<Scalar> panzer::ModelEvaluator< Scalar >::prototypeInArgs_
mutableprivate

Definition at line 671 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::OutArgs<Scalar> panzer::ModelEvaluator< Scalar >::prototypeOutArgs_
mutableprivate

Definition at line 672 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Thyra::ModelEvaluatorBase::InArgs<Scalar> panzer::ModelEvaluator< Scalar >::nominalValues_
mutableprivate

Definition at line 674 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
panzer::AssemblyEngine_TemplateManager<panzer::Traits> panzer::ModelEvaluator< Scalar >::ae_tm_
mutableprivate

Definition at line 676 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
std::vector<Teuchos::RCP<ParameterObject> > panzer::ModelEvaluator< Scalar >::parameters_
private

Definition at line 678 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
std::vector<Teuchos::RCP<Thyra::VectorSpaceBase<double> > > panzer::ModelEvaluator< Scalar >::tangent_space_
private

Definition at line 679 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
int panzer::ModelEvaluator< Scalar >::num_me_parameters_
private

Definition at line 680 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::do_fd_dfdp_
private

Definition at line 681 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
double panzer::ModelEvaluator< Scalar >::fd_perturb_size_
private

Definition at line 682 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::require_in_args_refresh_
mutableprivate

Definition at line 684 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::require_out_args_refresh_
mutableprivate

Definition at line 685 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<panzer::ResponseLibrary<panzer::Traits> > panzer::ModelEvaluator< Scalar >::responseLibrary_
mutableprivate

Definition at line 688 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
std::vector<Teuchos::RCP<ResponseObject> > panzer::ModelEvaluator< Scalar >::responses_
private

Definition at line 689 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<panzer::GlobalData> panzer::ModelEvaluator< Scalar >::global_data_
private

Definition at line 691 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::build_transient_support_
private

Definition at line 692 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<const panzer::LinearObjFactory<panzer::Traits> > panzer::ModelEvaluator< Scalar >::lof_
private

Definition at line 695 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<panzer::LinearObjContainer> panzer::ModelEvaluator< Scalar >::ghostedContainer_
mutableprivate

Definition at line 696 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<ReadOnlyVector_GlobalEvaluationData> panzer::ModelEvaluator< Scalar >::xContainer_
mutableprivate

Definition at line 697 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<ReadOnlyVector_GlobalEvaluationData> panzer::ModelEvaluator< Scalar >::xdotContainer_
mutableprivate

Definition at line 698 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Teuchos::RCP<const Thyra::LinearOpWithSolveFactoryBase<Scalar> > panzer::ModelEvaluator< Scalar >::solverFactory_
private

Definition at line 701 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
GlobalEvaluationDataContainer panzer::ModelEvaluator< Scalar >::nonParamGlobalEvaluationData_
private

Definition at line 703 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
GlobalEvaluationDataContainer panzer::ModelEvaluator< Scalar >::distrParamGlobalEvaluationData_
private

Definition at line 704 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::oneTimeDirichletBeta_on_
mutableprivate

Definition at line 706 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
Scalar panzer::ModelEvaluator< Scalar >::oneTimeDirichletBeta_
mutableprivate

Definition at line 707 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::build_volume_field_managers_
private

Definition at line 709 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
bool panzer::ModelEvaluator< Scalar >::build_bc_field_managers_
private

Definition at line 710 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
std::vector<bool> panzer::ModelEvaluator< Scalar >::active_evaluation_types_
private

Definition at line 711 of file Panzer_ModelEvaluator.hpp.

template<typename Scalar >
unsigned long long panzer::ModelEvaluator< Scalar >::write_matrix_count_
mutableprivate

Definition at line 713 of file Panzer_ModelEvaluator.hpp.


The documentation for this class was generated from the following files: