Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
panzer::ResponseEvaluatorFactory< EvalT > Class Template Referenceabstract

#include <Panzer_ResponseEvaluatorFactory.hpp>

Inheritance diagram for panzer::ResponseEvaluatorFactory< EvalT >:
Inheritance graph
[legend]

Public Member Functions

 ResponseEvaluatorFactory ()
 
virtual ~ResponseEvaluatorFactory ()
 
virtual Teuchos::RCP
< ResponseBase
buildResponseObject (const std::string &responseName, const std::vector< WorksetDescriptor > &wkstdescs) const =0
 
virtual void buildAndRegisterEvaluators (const std::string &responseName, PHX::FieldManager< panzer::Traits > &fm, const panzer::PhysicsBlock &physicsBlock, const Teuchos::ParameterList &user_data) const =0
 
virtual bool typeSupported () const =0
 
- Public Member Functions inherited from panzer::ResponseEvaluatorFactoryBase
 ResponseEvaluatorFactoryBase ()
 
virtual ~ResponseEvaluatorFactoryBase ()
 
- Public Member Functions inherited from panzer::EvaluatorsRegistrar
int setDetailsIndex (const int details_index)
 
int getDetailsIndex () const
 Get the WorksetDetails index. More...
 

Additional Inherited Members

- Protected Member Functions inherited from panzer::EvaluatorsRegistrar
 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
 

Detailed Description

template<typename EvalT>
class panzer::ResponseEvaluatorFactory< EvalT >

This pure virtual class defines the methods to be used to construct a response using field managers. It is assumed that multiple field managers can be populated with this response, thus the object itself should remain stateless.

Note
Users should derive off of this class directly. The ReponseEvaluatorFactory_TemplateManager should be used to access these objects.

Definition at line 34 of file Panzer_ResponseEvaluatorFactory.hpp.

Constructor & Destructor Documentation

template<typename EvalT >
panzer::ResponseEvaluatorFactory< EvalT >::ResponseEvaluatorFactory ( )
inline

Definition at line 37 of file Panzer_ResponseEvaluatorFactory.hpp.

template<typename EvalT >
virtual panzer::ResponseEvaluatorFactory< EvalT >::~ResponseEvaluatorFactory ( )
inlinevirtual

Definition at line 39 of file Panzer_ResponseEvaluatorFactory.hpp.

Member Function Documentation

template<typename EvalT >
virtual Teuchos::RCP<ResponseBase> panzer::ResponseEvaluatorFactory< EvalT >::buildResponseObject ( const std::string &  responseName,
const std::vector< WorksetDescriptor > &  wkstdescs 
) const
pure virtual

Build the response object used by this factory. This object assumes the role of the scatter target and will be accessible by all the evaluators in the field managers. This is the sideset version of the buildResponseObject function.

Parameters
[in]responseNameName of response to be built. This name will be used for looking up the response in the GlobalEvaluationDataContainer object.
[in]wkstdescsA vector of descriptors for the elements this response is over.

Implements panzer::ResponseEvaluatorFactoryBase.

Implemented in panzer::ResponseEvaluatorFactory_ExtremeValue< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Probe< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Functional< EvalT, LO, GO >, panzer_stk::ResponseEvaluatorFactory_SolutionWriter< EvalT >, and panzer::ResponseEvaluatorFactory_IPCoordinates< EvalT >.

template<typename EvalT >
virtual void panzer::ResponseEvaluatorFactory< EvalT >::buildAndRegisterEvaluators ( const std::string &  responseName,
PHX::FieldManager< panzer::Traits > &  fm,
const panzer::PhysicsBlock physicsBlock,
const Teuchos::ParameterList user_data 
) const
pure virtual

Build and register evaluators for a response on a particular physics block. Note that it is assumed that a field has been marked required during this method call.

Parameters
[in]responseNameThe name of the response to be constructed by these evaluators.
[in,out]fmField manager to be fuild with the evaluators.
[in]physicsBlockWhat physics block is being used for constructing the evaluators
[in]user_dataThe user data parameter list, this stores things that the user may find useful.

Implements panzer::ResponseEvaluatorFactoryBase.

Implemented in panzer::ResponseEvaluatorFactory_ExtremeValue< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Probe< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Functional< EvalT, LO, GO >, panzer_stk::ResponseEvaluatorFactory_SolutionWriter< EvalT >, and panzer::ResponseEvaluatorFactory_IPCoordinates< EvalT >.

template<typename EvalT >
virtual bool panzer::ResponseEvaluatorFactory< EvalT >::typeSupported ( ) const
pure virtual

Is this evaluation type supported by the factory. This is used to determine cases where a response may support a particular evaluation type, however at runtime the user decides not to enable the (say) Jacobian evaluation of this response.

Note that use of this mechanism is complementary to having the builder return Teuchos::null for a particular evaluation type.

Implements panzer::ResponseEvaluatorFactoryBase.

Implemented in panzer::ResponseEvaluatorFactory_ExtremeValue< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Probe< EvalT, LO, GO >, panzer::ResponseEvaluatorFactory_Functional< EvalT, LO, GO >, panzer_stk::ResponseEvaluatorFactory_SolutionWriter< EvalT >, panzer::ResponseEvaluatorFactory_IPCoordinates< EvalT >, and panzer::ResponseEvaluatorFactory_IPCoordinates< EvalT >.


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