Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

A model evaluator decorator for computing an explicit adjoint. More...

#include <Thyra_TpetraExplicitAdjointModelEvaluator.hpp>

Inheritance diagram for Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >:
Inheritance graph
[legend]

Public Member Functions

 TpetraExplicitAdjointModelEvaluator (const RCP< const ModelEvaluator< Scalar > > &model)
 Constructor. More...
 
 TpetraExplicitAdjointModelEvaluator (const RCP< ModelEvaluator< Scalar > > &model)
 Constructor. More...
 
virtual ~TpetraExplicitAdjointModelEvaluator ()=default
 Destructor. More...
 
ModelEvaluatorBase::InArgs
< Scalar > 
createInArgs () const
 
RCP< LinearOpBase< Scalar > > create_W_op () const
 
- Public Member Functions inherited from Thyra::ModelEvaluatorDelegatorBase< Scalar >
 ModelEvaluatorDelegatorBase ()
 Constructs to uninitialized. More...
 
 ModelEvaluatorDelegatorBase (const RCP< ModelEvaluator< Scalar > > &model)
 Calls initialize(). More...
 
 ModelEvaluatorDelegatorBase (const RCP< const ModelEvaluator< Scalar > > &model)
 Calls initialize(). More...
 
void initialize (const RCP< ModelEvaluator< Scalar > > &model)
 Initialize given a non-const model evaluator. More...
 
void initialize (const RCP< const ModelEvaluator< Scalar > > &model)
 Initialize given a const model evaluator. More...
 
void uninitialize ()
 Uninitialize. More...
 
virtual bool isUnderlyingModelConst () const
 
virtual RCP< ModelEvaluator
< Scalar > > 
getNonconstUnderlyingModel ()
 
virtual RCP< const
ModelEvaluator< Scalar > > 
getUnderlyingModel () const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_x_space () const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_f_space () const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_f_multiplier_space () const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_p_space (int l) const
 
RCP< const Teuchos::Array
< std::string > > 
get_p_names (int l) const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_g_space (int j) const
 
RCP< const VectorSpaceBase
< Scalar > > 
get_g_multiplier_space (int j) const
 
Teuchos::ArrayView< const
std::string > 
get_g_names (int j) const
 
ModelEvaluatorBase::InArgs
< Scalar > 
getNominalValues () const
 
ModelEvaluatorBase::InArgs
< Scalar > 
getLowerBounds () const
 
ModelEvaluatorBase::InArgs
< Scalar > 
getUpperBounds () const
 
RCP< LinearOpWithSolveBase
< Scalar > > 
create_W () const
 
RCP< PreconditionerBase< Scalar > > create_W_prec () const
 
RCP< const
LinearOpWithSolveFactoryBase
< Scalar > > 
get_W_factory () const
 
void reportFinalPoint (const ModelEvaluatorBase::InArgs< Scalar > &finalPoint, const bool wasSolved)
 
- Public Member Functions inherited from Thyra::ModelEvaluatorDefaultBase< Scalar >
int Np () const
 
int Ng () const
 
RCP< LinearOpBase< Scalar > > create_DfDp_op (int l) const
 
RCP< LinearOpBase< Scalar > > create_DgDx_dot_op (int j) const
 
RCP< LinearOpBase< Scalar > > create_DgDx_op (int j) const
 
RCP< LinearOpBase< Scalar > > create_DgDp_op (int j, int l) const
 
ModelEvaluatorBase::OutArgs
< Scalar > 
createOutArgs () const
 
void evalModel (const ModelEvaluatorBase::InArgs< Scalar > &inArgs, const ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
- Public Member Functions inherited from Thyra::ModelEvaluator< Scalar >
- Public Member Functions inherited from Thyra::ModelEvaluatorBase
 ModelEvaluatorBase ()
 constructor More...
 

Additional Inherited Members

- Public Types inherited from Thyra::ModelEvaluator< Scalar >
typedef Teuchos::ScalarTraits
< Scalar >::magnitudeType 
ScalarMag
 
- Public Types inherited from Thyra::ModelEvaluatorBase
enum  EInArgsMembers {
  IN_ARG_x_dot_dot, IN_ARG_x_dot, IN_ARG_x, IN_ARG_x_dot_poly,
  IN_ARG_x_poly, IN_ARG_x_dot_mp, IN_ARG_x_mp, IN_ARG_t,
  IN_ARG_alpha, IN_ARG_beta, IN_ARG_W_x_dot_dot_coeff, IN_ARG_step_size,
  IN_ARG_stage_number
}
 
enum  EInArgs_p_mp { IN_ARG_p_mp }
 
enum  EEvalType { , EVAL_TYPE_APPROX_DERIV, EVAL_TYPE_VERY_APPROX_DERIV }
 The type of an evaluation. More...
 
enum  EDerivativeMultiVectorOrientation { DERIV_MV_JACOBIAN_FORM, DERIV_MV_GRADIENT_FORM, DERIV_MV_BY_COL = DERIV_MV_JACOBIAN_FORM, DERIV_TRANS_MV_BY_ROW = DERIV_MV_GRADIENT_FORM }
 
enum  EDerivativeLinearOp { DERIV_LINEAR_OP }
 
enum  EDerivativeLinearity { DERIV_LINEARITY_UNKNOWN, DERIV_LINEARITY_CONST, DERIV_LINEARITY_NONCONST }
 
enum  ERankStatus { DERIV_RANK_UNKNOWN, DERIV_RANK_FULL, DERIV_RANK_DEFICIENT }
 
enum  EOutArgsMembers {
  OUT_ARG_f, OUT_ARG_W, OUT_ARG_f_mp, OUT_ARG_W_mp,
  OUT_ARG_W_op, OUT_ARG_W_prec, OUT_ARG_f_poly
}
 
enum  EOutArgsDfDp { OUT_ARG_DfDp }
 
enum  EOutArgsDgDx_dot { OUT_ARG_DgDx_dot }
 
enum  EOutArgsDgDx { OUT_ARG_DgDx }
 
enum  EOutArgsDgDp { OUT_ARG_DgDp }
 
enum  EOutArgsDfDp_mp { OUT_ARG_DfDp_mp }
 
enum  EOutArgs_g_mp { OUT_ARG_g_mp }
 
enum  EOutArgsDgDx_dot_mp { OUT_ARG_DgDx_dot_mp }
 
enum  EOutArgsDgDx_mp { OUT_ARG_DgDx_mp }
 
enum  EOutArgsDgDp_mp { OUT_ARG_DgDp_mp }
 
- Static Public Attributes inherited from Thyra::ModelEvaluatorBase
static const int NUM_E_IN_ARGS_MEMBERS =13
 
static const int NUM_E_OUT_ARGS_MEMBERS =7
 
- Protected Member Functions inherited from Thyra::ModelEvaluatorDelegatorBase< Scalar >
void setLocalVerbosityLevelValidatedParameter (ParameterList *paramList) const
 Set a valid parameter for reading the local verbosity level. More...
 
Teuchos::EVerbosityLevel readLocalVerbosityLevelValidatedParameter (ParameterList &paramList) const
 Read the local verbosity level parameter. More...
 
- Protected Member Functions inherited from Thyra::ModelEvaluatorDefaultBase< Scalar >
 ModelEvaluatorDefaultBase ()
 
void initializeDefaultBase ()
 Function called by subclasses to fully initialize this object on any important change. More...
 
void resetDefaultBase ()
 Sets the the DefaultBase to an uninitialized state, forcing lazy initialization when needed. More...
 

Detailed Description

template<typename Scalar, typename LocalOrdinal, typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
class Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >

A model evaluator decorator for computing an explicit adjoint.

This ModelEvaluator only supports computing W_op and forms the adjoint by computing W_op from the underlying ModelEvaluator and then explicitly transposes it.

Since it derives from ModelEvaluatorDelegatorBase, it forwards all ModelEvaluator methods to the supplied underlying ModelEvaluator except those overloaded here.

Definition at line 62 of file Thyra_TpetraExplicitAdjointModelEvaluator.hpp.

Constructor & Destructor Documentation

template<typename Scalar , typename LocalOrdinal , typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraExplicitAdjointModelEvaluator ( const RCP< const ModelEvaluator< Scalar > > &  model)
inline

Constructor.

Definition at line 67 of file Thyra_TpetraExplicitAdjointModelEvaluator.hpp.

template<typename Scalar , typename LocalOrdinal , typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraExplicitAdjointModelEvaluator ( const RCP< ModelEvaluator< Scalar > > &  model)
inline

Constructor.

Definition at line 72 of file Thyra_TpetraExplicitAdjointModelEvaluator.hpp.

template<typename Scalar , typename LocalOrdinal , typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
virtual Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~TpetraExplicitAdjointModelEvaluator ( )
virtualdefault

Destructor.

Member Function Documentation

template<typename Scalar , typename LocalOrdinal , typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
ModelEvaluatorBase::InArgs<Scalar> Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::createInArgs ( ) const
inlinevirtual
template<typename Scalar , typename LocalOrdinal , typename GlobalOrdinal = LocalOrdinal, typename Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
RCP<LinearOpBase<Scalar> > Thyra::TpetraExplicitAdjointModelEvaluator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::create_W_op ( ) const
inlinevirtual

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