Rythmos - Transient Integration for Differential Equations
Version of the Day
|
Stepper class for theta integration scheme common in SNL thermal/fluids codes. More...
#include <Rythmos_ThetaStepper_decl.hpp>
Public Types | |
typedef Teuchos::ScalarTraits < Scalar >::magnitudeType | ScalarMag |
Public Types inherited from Rythmos::InterpolationBufferBase< Scalar > | |
typedef Teuchos::ScalarTraits < Scalar >::magnitudeType | ScalarMag |
Related Functions | |
(Note that these are not member functions.) | |
template<class Scalar > | |
RCP< ThetaStepper< Scalar > > | thetaStepper (const RCP< Thyra::ModelEvaluator< Scalar > > &model, const RCP< Thyra::NonlinearSolverBase< Scalar > > &solver, RCP< Teuchos::ParameterList > ¶meterList) |
Nonmember constructor. More... | |
Related Functions inherited from Rythmos::StepperBase< Scalar > | |
template<class Scalar > | |
bool | isInitialized (const StepperBase< Scalar > &stepper) |
template<class Scalar > | |
bool | isInitialized (const StepperBase< Scalar > &stepper) |
Related Functions inherited from Rythmos::InterpolationBufferBase< Scalar > | |
template<class Scalar > | |
RCP< const Thyra::VectorBase < Scalar > > | get_x (const InterpolationBufferBase< Scalar > &interpBuffer, const Scalar &t) |
Get a single point x(t) from an interpolation buffer. More... | |
template<class Scalar > | |
RCP< const Thyra::VectorBase < Scalar > > | get_xdot (const InterpolationBufferBase< Scalar > &interpBuffer, const Scalar &t) |
Get a single point xdot(t) from an interpolation buffer. More... | |
template<class Scalar > | |
void | get_x_and_x_dot (const InterpolationBufferBase< Scalar > &interpBuffer, const Scalar t, const Ptr< RCP< const Thyra::VectorBase< Scalar > > > &x, const Ptr< RCP< const Thyra::VectorBase< Scalar > > > &x_dot) |
Nonmember helper function to get x and x_dot at t. More... | |
template<class Scalar > | |
void | assertTimePointsAreSorted (const Array< Scalar > &time_vec) |
Assert that a time point vector is sorted. More... | |
template<class Scalar > | |
void | assertNoTimePointsBeforeCurrentTimeRange (const InterpolationBufferBase< Scalar > &interpBuffer, const Array< Scalar > &time_vec, const int &startingTimePointIndex=0) |
Assert that none of the time points fall before the current time range for an interpolation buffer object. More... | |
template<class Scalar > | |
void | assertNoTimePointsInsideCurrentTimeRange (const InterpolationBufferBase< Scalar > &interpBuffer, const Array< Scalar > &time_vec) |
Assert that none of the time points fall inside the current time range for an interpolation buffer object. More... | |
template<class TimeType > | |
void | selectPointsInTimeRange (const Array< TimeType > &points_in, const TimeRange< TimeType > &range, const Ptr< Array< TimeType > > &points_out) |
Select points from an Array that sit in a TimeRange. More... | |
template<class TimeType > | |
void | removePointsInTimeRange (Array< TimeType > *points_in, const TimeRange< TimeType > &range) |
Remove points from an Array that sit in a TimeRange. More... | |
template<class Scalar > | |
bool | getCurrentPoints (const InterpolationBufferBase< Scalar > &interpBuffer, const Array< Scalar > &time_vec, Array< RCP< const Thyra::VectorBase< Scalar > > > *x_vec, Array< RCP< const Thyra::VectorBase< Scalar > > > *xdot_vec, int *nextTimePointIndex) |
Get time points in the current range of an interpolation buffer object. More... | |
Constructors, intializers, Misc. | |
ThetaStepper () | |
bool | isImplicit () const |
Return if this stepper is an implicit stepper. More... | |
void | setInterpolator (const RCP< InterpolatorBase< Scalar > > &interpolator) |
Redefined from InterpolatorAcceptingObjectBase. More... | |
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. More... | |
RCP< StepperBase< Scalar > > | cloneStepperAlgorithm () const |
Creates copies of all internal data (including the parameter list) except the model which is assumed to stateless. More... | |
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 ¶mList) |
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 |
Additional Inherited Members | |
Public Member Functions inherited from Rythmos::SolverAcceptingStepperBase< Scalar > | |
virtual void | setSolver (const Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)=0 |
Public Member Functions inherited from Rythmos::StepperBase< Scalar > | |
virtual bool | acceptsModel () const |
Return if this stepper accepts a model. More... | |
virtual bool | modelIsConst () const |
Return of the model is only const or can be returned as a non-const object. More... | |
virtual void | setStepControlData (const StepperBase &stepper) |
Set step control data from another stepper. More... | |
Public Member Functions inherited from Rythmos::InterpolatorAcceptingObjectBase< Scalar > | |
virtual | ~InterpolatorAcceptingObjectBase () |
Stepper class for theta integration scheme common in SNL thermal/fluids codes.
Definition at line 79 of file Rythmos_ThetaStepper_decl.hpp.
typedef Teuchos::ScalarTraits<Scalar>::magnitudeType Rythmos::ThetaStepper< Scalar >::ScalarMag |
Definition at line 86 of file Rythmos_ThetaStepper_decl.hpp.
Rythmos::ThetaStepper< Scalar >::ThetaStepper | ( | ) |
|
virtual |
Return if this stepper is an implicit stepper.
The default implemntation returns false
and therefore, by default, a stepper is considered to be an excplicit stepper.
Reimplemented from Rythmos::StepperBase< Scalar >.
|
virtual |
Redefined from InterpolatorAcceptingObjectBase.
Implements Rythmos::InterpolatorAcceptingObjectBase< Scalar >.
|
virtual |
|
virtual |
|
virtual |
void Rythmos::ThetaStepper< Scalar >::setSolver | ( | const RCP< Thyra::NonlinearSolverBase< Scalar > > & | solver | ) |
|
virtual |
Implements Rythmos::SolverAcceptingStepperBase< Scalar >.
|
virtual |
Implements Rythmos::SolverAcceptingStepperBase< Scalar >.
|
virtual |
Returns true.
Reimplemented from Rythmos::StepperBase< Scalar >.
|
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 >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::StepperBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
|
virtual |
Implements Rythmos::InterpolationBufferBase< Scalar >.
void Rythmos::ThetaStepper< Scalar >::setParameterList | ( | RCP< Teuchos::ParameterList > const & | paramList | ) |
RCP<Teuchos::ParameterList> Rythmos::ThetaStepper< Scalar >::getNonconstParameterList | ( | ) |
RCP<Teuchos::ParameterList> Rythmos::ThetaStepper< Scalar >::unsetParameterList | ( | ) |
RCP<const Teuchos::ParameterList> Rythmos::ThetaStepper< Scalar >::getValidParameters | ( | ) | const |
void Rythmos::ThetaStepper< Scalar >::describe | ( | Teuchos::FancyOStream & | out, |
const Teuchos::EVerbosityLevel | verbLevel | ||
) | const |
|
related |
Nonmember constructor.