Rythmos::BackwardEulerStepper< Scalar > Class Template Reference

Simple concrete stepper subclass implementing an implicit backward Euler method. More...

#include <Rythmos_BackwardEulerStepper_decl.hpp>

Inheritance diagram for Rythmos::BackwardEulerStepper< Scalar >:

Inheritance graph
[legend]
List of all members.

Constructors, intializers, Misc.

 BackwardEulerStepper ()
 
 BackwardEulerStepper (const RCP< Thyra::ModelEvaluator< Scalar > > &model, const RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)
 

Overridden from InterpolatorAcceptingObjectBase

void setInterpolator (const RCP< InterpolatorBase< Scalar > > &interpolator)
 
RCP< InterpolatorBase< Scalar > > getNonconstInterpolator ()
 
RCP< const InterpolatorBase<
Scalar > > 
getInterpolator () const
 
RCP< InterpolatorBase< Scalar > > unSetInterpolator ()
 

Overridden from SolverAcceptingStepperBase

void setSolver (const RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)
 
RCP< Thyra::NonlinearSolverBase<
Scalar > > 
getNonconstSolver ()
 
RCP< const Thyra::NonlinearSolverBase<
Scalar > > 
getSolver () const
 

Overridden from StepperBase

bool supportsCloning () const
 Returns true.
RCP< StepperBase< Scalar > > cloneStepperAlgorithm () const
 Creates copies of all internal data (including the parameter list) except the model which is assumed to stateless.
bool isImplicit () const
 
void setModel (const RCP< const Thyra::ModelEvaluator< Scalar > > &model)
 
void setNonconstModel (const RCP< Thyra::ModelEvaluator< Scalar > > &model)
 
RCP< const Thyra::ModelEvaluator<
Scalar > > 
getModel () const
 
RCP< Thyra::ModelEvaluator<
Scalar > > 
getNonconstModel ()
 
void setInitialCondition (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &initialCondition)
 
Thyra::ModelEvaluatorBase::InArgs<
Scalar > 
getInitialCondition () const
 
Scalar takeStep (Scalar dt, StepSizeType flag)
 
const StepStatus< Scalar > getStepStatus () const
 

Overridden from InterpolationBufferBase

RCP< const Thyra::VectorSpaceBase<
Scalar > > 
get_x_space () const
 
void addPoints (const Array< Scalar > &time_vec, const Array< RCP< const Thyra::VectorBase< Scalar > > > &x_vec, const Array< RCP< const Thyra::VectorBase< Scalar > > > &xdot_vec)
 
TimeRange< Scalar > getTimeRange () const
 
void getPoints (const Array< Scalar > &time_vec, Array< RCP< const Thyra::VectorBase< Scalar > > > *x_vec, Array< RCP< const Thyra::VectorBase< Scalar > > > *xdot_vec, Array< ScalarMag > *accuracy_vec) const
 
void getNodes (Array< Scalar > *time_vec) const
 
void removeNodes (Array< Scalar > &time_vec)
 
int getOrder () const
 

Overridden from Teuchos::ParameterListAcceptor

void setParameterList (RCP< Teuchos::ParameterList > const &paramList)
 
RCP< Teuchos::ParameterList > getNonconstParameterList ()
 
RCP< Teuchos::ParameterList > unsetParameterList ()
 
RCP< const Teuchos::ParameterList > getValidParameters () const
 

Overridden from Teuchos::Describable

void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
 

Public Types

typedef Teuchos::ScalarTraits<
Scalar >::magnitudeType 
ScalarMag
 

Public Member Functions

RCP< const MomentoBase< Scalar > > getMomento () const
 Get momento object for use in restarts.
void setMomento (const Ptr< const MomentoBase< Scalar > > &momentoPtr, const RCP< Thyra::ModelEvaluator< Scalar > > &model, const RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)
 Set momento object for use in restarts.

Related Functions

(Note that these are not member functions.)

RCP< BackwardEulerStepper<
Scalar > > 
backwardEulerStepper (const RCP< Thyra::ModelEvaluator< Scalar > > &model, const RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)
 Nonmember constructor.

Detailed Description

template<class Scalar>
class Rythmos::BackwardEulerStepper< Scalar >

Simple concrete stepper subclass implementing an implicit backward Euler method.

This class exists primarily as a simple example of an implicit time stepper and as a vehicle for experimentation. The ImplicitBDFStepper also implements backward Euler and is a more powerful stepper class. This class does not implement a local truncation error test and therefore also does not handle the automatic step size selection. Therefore, if you need these features, you should really use the ImplicitBDFStepper class.

Definition at line 235 of file Rythmos_BackwardEulerStepper_decl.hpp.


Member Typedef Documentation

template<class Scalar>
typedef Teuchos::ScalarTraits<Scalar>::magnitudeType Rythmos::BackwardEulerStepper< Scalar >::ScalarMag

Reimplemented from Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 242 of file Rythmos_BackwardEulerStepper_decl.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Rythmos::BackwardEulerStepper< Scalar >::BackwardEulerStepper (  ) 

Definition at line 74 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
Rythmos::BackwardEulerStepper< Scalar >::BackwardEulerStepper ( const RCP< Thyra::ModelEvaluator< Scalar > > &  model,
const RCP< Thyra::NonlinearSolverBase< Scalar > > &  solver 
)

Definition at line 84 of file Rythmos_BackwardEulerStepper_def.hpp.


Member Function Documentation

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setInterpolator ( const RCP< InterpolatorBase< Scalar > > &  interpolator  )  [virtual]

Implements Rythmos::InterpolatorAcceptingObjectBase< Scalar >.

Definition at line 122 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< InterpolatorBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getNonconstInterpolator (  )  [virtual]

Implements Rythmos::InterpolatorAcceptingObjectBase< Scalar >.

Definition at line 135 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const InterpolatorBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getInterpolator (  )  const [virtual]

Implements Rythmos::InterpolatorAcceptingObjectBase< Scalar >.

Definition at line 142 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< InterpolatorBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::unSetInterpolator (  )  [virtual]

Implements Rythmos::InterpolatorAcceptingObjectBase< Scalar >.

Definition at line 149 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setSolver ( const RCP< Thyra::NonlinearSolverBase< Scalar > > &  solver  ) 

Definition at line 162 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< Thyra::NonlinearSolverBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getNonconstSolver (  )  [virtual]

Implements Rythmos::SolverAcceptingStepperBase< Scalar >.

Definition at line 188 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const Thyra::NonlinearSolverBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getSolver (  )  const [virtual]

Implements Rythmos::SolverAcceptingStepperBase< Scalar >.

Definition at line 196 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
bool Rythmos::BackwardEulerStepper< Scalar >::supportsCloning (  )  const [virtual]

Returns true.

Reimplemented from Rythmos::StepperBase< Scalar >.

Definition at line 206 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< StepperBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::cloneStepperAlgorithm (  )  const [virtual]

Creates copies of all internal data (including the parameter list) except the model which is assumed to stateless.

If a shallow copy of the model is not appropirate for some reasone, then the client can simply reset the model using returnVal->setModel().

Reimplemented from Rythmos::StepperBase< Scalar >.

Definition at line 214 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
bool Rythmos::BackwardEulerStepper< Scalar >::isImplicit (  )  const [virtual]

Reimplemented from Rythmos::StepperBase< Scalar >.

Definition at line 242 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setModel ( const RCP< const Thyra::ModelEvaluator< Scalar > > &  model  )  [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 248 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setNonconstModel ( const RCP< Thyra::ModelEvaluator< Scalar > > &  model  )  [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 280 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const Thyra::ModelEvaluator< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getModel (  )  const [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 289 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< Thyra::ModelEvaluator< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getNonconstModel (  )  [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 297 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setInitialCondition ( const Thyra::ModelEvaluatorBase::InArgs< Scalar > &  initialCondition  )  [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 304 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
Thyra::ModelEvaluatorBase::InArgs< Scalar > Rythmos::BackwardEulerStepper< Scalar >::getInitialCondition (  )  const [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 363 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
Scalar Rythmos::BackwardEulerStepper< Scalar >::takeStep ( Scalar  dt,
StepSizeType  flag 
) [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 370 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
const StepStatus< Scalar > Rythmos::BackwardEulerStepper< Scalar >::getStepStatus (  )  const [virtual]

Implements Rythmos::StepperBase< Scalar >.

Definition at line 537 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const Thyra::VectorSpaceBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::get_x_space (  )  const [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 568 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::addPoints ( const Array< Scalar > &  time_vec,
const Array< RCP< const Thyra::VectorBase< Scalar > > > &  x_vec,
const Array< RCP< const Thyra::VectorBase< Scalar > > > &  xdot_vec 
) [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 575 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
TimeRange< Scalar > Rythmos::BackwardEulerStepper< Scalar >::getTimeRange (  )  const [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 623 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::getPoints ( const Array< Scalar > &  time_vec,
Array< RCP< const Thyra::VectorBase< Scalar > > > *  x_vec,
Array< RCP< const Thyra::VectorBase< Scalar > > > *  xdot_vec,
Array< ScalarMag > *  accuracy_vec 
) const [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 634 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::getNodes ( Array< Scalar > *  time_vec  )  const [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 762 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::removeNodes ( Array< Scalar > &  time_vec  )  [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 793 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
int Rythmos::BackwardEulerStepper< Scalar >::getOrder (  )  const [virtual]

Implements Rythmos::InterpolationBufferBase< Scalar >.

Definition at line 815 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setParameterList ( RCP< Teuchos::ParameterList > const &  paramList  ) 

Definition at line 825 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< Teuchos::ParameterList > Rythmos::BackwardEulerStepper< Scalar >::getNonconstParameterList (  ) 

Definition at line 838 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< Teuchos::ParameterList > Rythmos::BackwardEulerStepper< Scalar >::unsetParameterList (  ) 

Definition at line 846 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const Teuchos::ParameterList > Rythmos::BackwardEulerStepper< Scalar >::getValidParameters (  )  const

Definition at line 857 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::describe ( Teuchos::FancyOStream &  out,
const Teuchos::EVerbosityLevel  verbLevel 
) const

Definition at line 874 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
RCP< const MomentoBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getMomento (  )  const

Get momento object for use in restarts.

Definition at line 959 of file Rythmos_BackwardEulerStepper_def.hpp.

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setMomento ( const Ptr< const MomentoBase< Scalar > > &  momentoPtr,
const RCP< Thyra::ModelEvaluator< Scalar > > &  model,
const RCP< Thyra::NonlinearSolverBase< Scalar > > &  solver 
)

Set momento object for use in restarts.

Definition at line 980 of file Rythmos_BackwardEulerStepper_def.hpp.


Friends And Related Function Documentation

template<class Scalar>
RCP< BackwardEulerStepper< Scalar > > backwardEulerStepper ( const RCP< Thyra::ModelEvaluator< Scalar > > &  model,
const RCP< Thyra::NonlinearSolverBase< Scalar > > &  solver 
) [related]

Nonmember constructor.

Definition at line 50 of file Rythmos_BackwardEulerStepper_def.hpp.


The documentation for this class was generated from the following files:
Generated on Tue Jul 13 09:23:54 2010 for Rythmos - Transient Integration for Differential Equations by  doxygen 1.4.7