Tempus
Version of the Day
Time Integration
|
A ModelEvaluator for residual evaluations given a state. This ModelEvaluator takes a state, x, and determines its residual, , which is suitable for a nonlinear solve. This is accomplished by computing the time derivative of the state, x_dot, (through Lambda functions), supplying the current time, and calling the application application ModelEvaluator, . More...
#include <Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp>
Public Types | |
enum | SCHEME_TYPE { NEWMARK_IMPLICIT_AFORM, NEWMARK_IMPLICIT_DFORM } |
typedef Thyra::VectorBase< Scalar > | Vector |
Public Member Functions | |
WrapperModelEvaluatorSecondOrder (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel, const std::string schemeName) | |
Constructor. More... | |
void | setAppModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &me) |
Set the underlying application ModelEvaluator. More... | |
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getAppModel () const |
Get the underlying application model 'f'. More... | |
void | initializeNewmark (Teuchos::RCP< const Vector > v_pred, Teuchos::RCP< const Vector > d_pred, Scalar delta_t, Scalar t, Scalar beta, Scalar gamma) |
Set values needed in evalModelImpl. More... | |
Overridden from Thyra::StateFuncModelEvaluatorBase | |
Teuchos::RCP < Thyra::LinearOpBase< Scalar > > | create_W_op () const |
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase < Scalar > > | get_W_factory () const |
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_f_space () const |
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_p_space (int p) const |
Get the p space. More... | |
Teuchos::RCP< const Teuchos::Array< std::string > > | get_p_names (int p) const |
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_x_space () const |
Get the x-solution space. More... | |
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_g_space (int i) const |
Get the g space. More... | |
Thyra::ModelEvaluatorBase::InArgs < Scalar > | getNominalValues () const |
virtual void | setInArgs (Thyra::ModelEvaluatorBase::InArgs< Scalar > inArgs) |
Set InArgs the wrapper ModelEvalutor. More... | |
virtual Thyra::ModelEvaluatorBase::InArgs < Scalar > | getInArgs () |
Get InArgs the wrapper ModelEvalutor. More... | |
virtual void | setOutArgs (Thyra::ModelEvaluatorBase::OutArgs< Scalar > outArgs) |
Set OutArgs the wrapper ModelEvalutor. More... | |
virtual Thyra::ModelEvaluatorBase::OutArgs < Scalar > | getOutArgs () |
Get OutArgs the wrapper ModelEvalutor. More... | |
virtual void | setForSolve (Teuchos::RCP< TimeDerivative< Scalar > > timeDer, Thyra::ModelEvaluatorBase::InArgs< Scalar > inArgs, Thyra::ModelEvaluatorBase::OutArgs< Scalar > outArgs, EVALUATION_TYPE=SOLVE_FOR_X) |
Set parameters for application implicit ModelEvaluator solve. More... | |
Thyra::ModelEvaluatorBase::InArgs < Scalar > | createInArgs () const |
Thyra::ModelEvaluatorBase::OutArgs < Scalar > | createOutArgsImpl () const |
void | evalModelImpl (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const |
Vector Methods. |
Private Member Functions | |
WrapperModelEvaluatorSecondOrder () | |
Default constructor - not allowed. More... | |
Private Attributes | |
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | appModel_ |
Scalar | t_ |
Scalar | gamma_ |
Scalar | beta_ |
Scalar | delta_t_ |
Teuchos::RCP< const Vector > | d_pred_ |
Teuchos::RCP< const Vector > | v_pred_ |
Teuchos::RCP < Teuchos::FancyOStream > | out_ |
SCHEME_TYPE | schemeType_ |
Teuchos::RCP< TimeDerivative < Scalar > > | timeDer_ |
Thyra::ModelEvaluatorBase::InArgs < Scalar > | wrapperInArgs_ |
Thyra::ModelEvaluatorBase::OutArgs < Scalar > | wrapperOutArgs_ |
A ModelEvaluator for residual evaluations given a state. This ModelEvaluator takes a state, x, and determines its residual, , which is suitable for a nonlinear solve. This is accomplished by computing the time derivative of the state, x_dot, (through Lambda functions), supplying the current time, and calling the application application ModelEvaluator, .
This class breaks the primary design principle for ModelEvaluators; it is not stateless!
Definition at line 32 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
typedef Thyra::VectorBase<Scalar> Tempus::WrapperModelEvaluatorSecondOrder< Scalar >::Vector |
Definition at line 36 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
enum Tempus::WrapperModelEvaluatorSecondOrder::SCHEME_TYPE |
Enumerator | |
---|---|
NEWMARK_IMPLICIT_AFORM | |
NEWMARK_IMPLICIT_DFORM |
Definition at line 189 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inline |
Constructor.
Definition at line 39 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Default constructor - not allowed.
|
inline |
Definition at line 94 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
Thyra::ModelEvaluatorBase::InArgs< Scalar > Tempus::WrapperModelEvaluatorSecondOrder< Scalar >::createInArgs | ( | ) | const |
Definition at line 18 of file Tempus_WrapperModelEvaluatorSecondOrder_impl.hpp.
Thyra::ModelEvaluatorBase::OutArgs< Scalar > Tempus::WrapperModelEvaluatorSecondOrder< Scalar >::createOutArgsImpl | ( | ) | const |
Definition at line 37 of file Tempus_WrapperModelEvaluatorSecondOrder_impl.hpp.
void Tempus::WrapperModelEvaluatorSecondOrder< Scalar >::evalModelImpl | ( | const Thyra::ModelEvaluatorBase::InArgs< Scalar > & | inArgs, |
const Thyra::ModelEvaluatorBase::OutArgs< Scalar > & | outArgs | ||
) | const |
Definition at line 57 of file Tempus_WrapperModelEvaluatorSecondOrder_impl.hpp.
|
inline |
Definition at line 111 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get the g space.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 143 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inline |
Definition at line 127 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get the p space.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 119 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inline |
Definition at line 103 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get the x-solution space.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 135 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get the underlying application model 'f'.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 72 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get InArgs the wrapper ModelEvalutor.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 159 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inline |
Definition at line 146 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Get OutArgs the wrapper ModelEvalutor.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 167 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inline |
Set values needed in evalModelImpl.
Definition at line 81 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Set the underlying application ModelEvaluator.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 62 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Set parameters for application implicit ModelEvaluator solve.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 171 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Set InArgs the wrapper ModelEvalutor.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 155 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
inlinevirtual |
Set OutArgs the wrapper ModelEvalutor.
Implements Tempus::WrapperModelEvaluator< Scalar >.
Definition at line 163 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 198 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 201 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 203 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 202 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 200 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 205 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 206 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 199 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 208 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 204 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 209 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.
|
private |
Definition at line 210 of file Tempus_WrapperModelEvaluatorSecondOrder_decl.hpp.