Mix-in interface all implicit stepper objects that accept a nonlinear solver to be used to compute the timestep.
More...
|
| virtual void | setSolver (const Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > &solver)=0 |
| |
| virtual Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > | getNonconstSolver ()=0 |
| |
| virtual Teuchos::RCP< const Thyra::NonlinearSolverBase< Scalar > > | getSolver () const =0 |
| |
| virtual bool | supportsCloning () const |
| | Return if this stepper supports cloning or not. More...
|
| |
| virtual RCP< StepperBase< Scalar > > | cloneStepperAlgorithm () const |
| | Clone the stepper object if supported. More...
|
| |
| virtual bool | isImplicit () const |
| | Return if this stepper is an implicit stepper. More...
|
| |
| virtual bool | acceptsModel () const |
| | Return if this stepper accepts a model. More...
|
| |
| virtual void | setModel (const RCP< const Thyra::ModelEvaluator< Scalar > > &model)=0 |
| | Specify the model problem to integrate. More...
|
| |
| virtual void | setNonconstModel (const RCP< Thyra::ModelEvaluator< Scalar > > &model)=0 |
| | Accept a nonconst model. More...
|
| |
| virtual bool | modelIsConst () const |
| | Return of the model is only const or can be returned as a non-const object. More...
|
| |
| virtual RCP< const Thyra::ModelEvaluator< Scalar > > | getModel () const =0 |
| | Get the model. More...
|
| |
| virtual RCP< Thyra::ModelEvaluator< Scalar > > | getNonconstModel ()=0 |
| | Get the model nonconst. More...
|
| |
| virtual void | setInitialCondition (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &initialCondition)=0 |
| | Specify initial condition and re-initialize. More...
|
| |
| virtual Thyra::ModelEvaluatorBase::InArgs< Scalar > | getInitialCondition () const =0 |
| | Get the currently set initial condtion. More...
|
| |
| virtual Scalar | takeStep (Scalar dt, StepSizeType stepType)=0 |
| | Take a step. More...
|
| |
| virtual const StepStatus< Scalar > | getStepStatus () const =0 |
| | Get current stepper status after a step has been taken. More...
|
| |
| virtual void | setStepControlData (const StepperBase &stepper) |
| | Set step control data from another stepper. More...
|
| |
| virtual RCP< const Thyra::VectorSpaceBase< Scalar > > | get_x_space () const =0 |
| | Return the space for x and x_dot. More...
|
| |
| virtual 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)=0 |
| | Add points to the buffer. More...
|
| |
| virtual TimeRange< Scalar > | getTimeRange () const =0 |
| | Return the range of time values where interpolation calls can be performed. More...
|
| |
| virtual 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 =0 |
| | Get values from the buffer at different time points. More...
|
| |
| virtual void | getNodes (Array< Scalar > *time_vec) const =0 |
| | Get interpolation nodes. More...
|
| |
| virtual void | removeNodes (Array< Scalar > &time_vec)=0 |
| | Remove nodes from the interpolation buffer. More...
|
| |
| virtual int | getOrder () const =0 |
| | Get order of interpolation. More...
|
| |
|
| typedef Teuchos::ScalarTraits< Scalar >::magnitudeType | ScalarMag |
| |
| template<class Scalar > |
| bool | isInitialized (const StepperBase< Scalar > &stepper) |
| |
| template<class Scalar > |
| bool | isInitialized (const StepperBase< Scalar > &stepper) |
| |
| 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...
|
| |
template<class Scalar>
class Rythmos::SolverAcceptingStepperBase< Scalar >
Mix-in interface all implicit stepper objects that accept a nonlinear solver to be used to compute the timestep.
ToDo: Finish documentation!
Definition at line 47 of file Rythmos_SolverAcceptingStepperBase.hpp.