Thyra  Version of the Day
Related Functions | List of all members
Thyra::Simple2DModelEvaluator< Scalar > Class Template Reference

Simple 2d simulation only ModelEvaluator for f(x) = 0. More...

#include <Thyra_Simple2DModelEvaluator_decl.hpp>

Related Functions

(Note that these are not member functions.)

template<class Scalar >
Teuchos::RCP< Simple2DModelEvaluator< Scalar > > simple2DModelEvaluator ()
 Nonmember constuctor. More...
 

Initializers/Accessors

void set_d (const Scalar &d)
 
void set_p (const Teuchos::ArrayView< const Scalar > &p)
 
void set_x0 (const Teuchos::ArrayView< const Scalar > &x0)
 
void setShowGetInvalidArgs (bool showGetInvalidArg)
 

Public functions overridden from ModelEvaulator.

Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_x_space () const
 
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_f_space () const
 
Thyra::ModelEvaluatorBase::InArgs< Scalar > getNominalValues () const
 
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > create_W_op () const
 
Teuchos::RCP< Thyra::PreconditionerBase< Scalar > > create_W_prec () const
 
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > get_W_factory () const
 
Thyra::ModelEvaluatorBase::InArgs< Scalar > createInArgs () const
 
Teuchos::RCP< Simple2DModelEvaluator< Scalar > > simple2DModelEvaluator ()
 

Detailed Description

template<class Scalar>
class Thyra::Simple2DModelEvaluator< Scalar >

Simple 2d simulation only ModelEvaluator for f(x) = 0.

The equations modeled are:

   f[0] =       x[0]      + x[1]*x[1] - p[0];
   f[1] = d * ( x[0]*x[0] - x[1]      - p[1] );

The Matrix W = d(f)/d(x) is implemented as a Thyra::MultiVectorBase object and the class Thyra::DefaultSerialDenseLinearOpWithSolveFactory is used to create the linear solver.

This class also supports an app-defined preconditioner W_prec but it is not used by the linear solver object. The preconditioner operator is implemented as the inverse diagonal of the forward Jacobian W.

This is really more of a mock test driver model for Thyra than an example of implementing a real simulation-constrained ModelEvaluator subclass. However, it is a very simple Thyra-only example and therefore is not a bad starting point.

Definition at line 93 of file Thyra_Simple2DModelEvaluator_decl.hpp.

Member Function Documentation

◆ set_d()

template<class Scalar >
void Thyra::Simple2DModelEvaluator< Scalar >::set_d ( const Scalar &  d)

Definition at line 78 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ set_p()

template<class Scalar >
void Thyra::Simple2DModelEvaluator< Scalar >::set_p ( const Teuchos::ArrayView< const Scalar > &  p)

Definition at line 85 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ set_x0()

template<class Scalar >
void Thyra::Simple2DModelEvaluator< Scalar >::set_x0 ( const Teuchos::ArrayView< const Scalar > &  x0)

Definition at line 95 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ setShowGetInvalidArgs()

template<class Scalar >
void Thyra::Simple2DModelEvaluator< Scalar >::setShowGetInvalidArgs ( bool  showGetInvalidArg)

Definition at line 106 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ get_x_space()

template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > Thyra::Simple2DModelEvaluator< Scalar >::get_x_space

Definition at line 117 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ get_f_space()

template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > Thyra::Simple2DModelEvaluator< Scalar >::get_f_space

Definition at line 125 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ getNominalValues()

template<class Scalar >
Thyra::ModelEvaluatorBase::InArgs< Scalar > Thyra::Simple2DModelEvaluator< Scalar >::getNominalValues

Definition at line 133 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ create_W_op()

template<class Scalar >
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > Thyra::Simple2DModelEvaluator< Scalar >::create_W_op

Definition at line 141 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ create_W_prec()

template<class Scalar >
Teuchos::RCP< Thyra::PreconditionerBase< Scalar > > Thyra::Simple2DModelEvaluator< Scalar >::create_W_prec

Definition at line 151 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ get_W_factory()

template<class Scalar >
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > Thyra::Simple2DModelEvaluator< Scalar >::get_W_factory

Definition at line 163 of file Thyra_Simple2DModelEvaluator_def.hpp.

◆ createInArgs()

template<class Scalar >
Thyra::ModelEvaluatorBase::InArgs< Scalar > Thyra::Simple2DModelEvaluator< Scalar >::createInArgs

Definition at line 171 of file Thyra_Simple2DModelEvaluator_def.hpp.

Friends And Related Function Documentation

◆ simple2DModelEvaluator()

template<class Scalar >
Teuchos::RCP< Simple2DModelEvaluator< Scalar > > simple2DModelEvaluator ( )
related

Nonmember constuctor.

Definition at line 68 of file Thyra_Simple2DModelEvaluator_def.hpp.


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