Rythmos::BackwardEulerStepper< Scalar > Class Template Reference

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

#include <Rythmos_BackwardEulerStepper.hpp>

Inheritance diagram for Rythmos::BackwardEulerStepper< Scalar >:

Inheritance graph
[legend]
List of all members.

Constructors, intializers, Misc.

 BackwardEulerStepper ()
 
 BackwardEulerStepper (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, const Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)
 
void setInterpolator (Teuchos::RCP< InterpolatorBase< Scalar > > interpolator)
 
Teuchos::RCP< InterpolatorBase<
Scalar > > 
unsetInterpolator ()
 

Overridden from SolverAcceptingStepperBase

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

Overridden from StepperBase

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

Overridden from InterpolationBufferBase

Teuchos::RCP< const Thyra::VectorSpaceBase<
Scalar > > 
get_x_space () const
 
void addPoints (const Array< Scalar > &time_vec, const Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > &x_vec, const Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > &xdot_vec)
 
TimeRange< Scalar > getTimeRange () const
 
void getPoints (const Array< Scalar > &time_vec, Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > *x_vec, Array< Teuchos::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 (Teuchos::RCP< Teuchos::ParameterList > const &paramList)
 
Teuchos::RCP< Teuchos::ParameterListgetParameterList ()
 
Teuchos::RCP< Teuchos::ParameterListunsetParameterList ()
 
Teuchos::RCP< const Teuchos::ParameterListgetValidParameters () const
 

Overridden from Teuchos::Describable

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

Public Types

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

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.


Member Typedef Documentation

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


Constructor & Destructor Documentation

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

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


Member Function Documentation

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setInterpolator Teuchos::RCP< InterpolatorBase< Scalar > >  interpolator  ) 
 

template<class Scalar>
Teuchos::RCP< InterpolatorBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::unsetInterpolator  ) 
 

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setSolver const Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > &  solver  )  [virtual]
 

Implements Rythmos::SolverAcceptingStepperBase< Scalar >.

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

Implements Rythmos::SolverAcceptingStepperBase< Scalar >.

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

Implements Rythmos::SolverAcceptingStepperBase< Scalar >.

template<class Scalar>
bool Rythmos::BackwardEulerStepper< Scalar >::supportsCloning  )  const
 

Returns true.

template<class Scalar>
Teuchos::RCP< StepperBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::cloneStepperAlgorithm  )  const
 

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().

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::setModel const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &  model  ) 
 

template<class Scalar>
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::getModel  )  const
 

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

template<class Scalar>
Scalar Rythmos::BackwardEulerStepper< Scalar >::takeStep Scalar  dt,
StepSizeType  flag
 

template<class Scalar>
const StepStatus< Scalar > Rythmos::BackwardEulerStepper< Scalar >::getStepStatus  )  const
 

template<class Scalar>
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > Rythmos::BackwardEulerStepper< Scalar >::get_x_space  )  const
 

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::addPoints const Array< Scalar > &  time_vec,
const Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > &  x_vec,
const Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > &  xdot_vec
 

template<class Scalar>
TimeRange< Scalar > Rythmos::BackwardEulerStepper< Scalar >::getTimeRange  )  const
 

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::getPoints const Array< Scalar > &  time_vec,
Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > *  x_vec,
Array< Teuchos::RCP< const Thyra::VectorBase< Scalar > > > *  xdot_vec,
Array< ScalarMag > *  accuracy_vec
const
 

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::getNodes Array< Scalar > *  time_vec  )  const
 

template<class Scalar>
void Rythmos::BackwardEulerStepper< Scalar >::removeNodes Array< Scalar > &  time_vec  ) 
 

template<class Scalar>
int Rythmos::BackwardEulerStepper< Scalar >::getOrder  )  const
 

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

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

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

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

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


The documentation for this class was generated from the following file:
Generated on Thu Apr 10 12:11:04 2008 for Rythmos - Transient Integration for Differential Equations by  doxygen 1.3.9.1