29 #ifndef Rythmos_FIRSTORDERERROR_STEP_CONTROL_STRATEGY_DECL_H 
   30 #define Rythmos_FIRSTORDERERROR_STEP_CONTROL_STRATEGY_DECL_H 
   32 #include "Rythmos_StepControlStrategyBase.hpp" 
   33 #include "Thyra_VectorBase.hpp" 
   34 #include "Teuchos_VerboseObject.hpp" 
  100 template<
class Scalar>
 
  106     typedef typename Teuchos::ScalarTraits<Scalar>::magnitudeType ScalarMag;
 
  112       const Scalar& stepSize, 
const StepSizeType& stepSizeType);
 
  116       StepSizeType* stepSizeType, 
int* order);
 
  121         ,
const RCP<
const Thyra::VectorBase<Scalar> >& soln
 
  122         ,
const RCP<
const Thyra::VectorBase<Scalar> >& ee
 
  158       Teuchos::FancyOStream &out,
 
  159       const Teuchos::EVerbosityLevel verbLevel
 
  186     void defaultInitializeAllData_();
 
  188     StepControlStrategyState stepControlState_;
 
  190     RCP<Teuchos::ParameterList> parameterList_;
 
  192     Scalar initialStepSize_;
 
  193     Scalar requestedStepSize_;
 
  194     Scalar currentStepSize_;
 
  195     Scalar nextStepSize_;
 
  196     Scalar stepSizeFactor_;
 
  197     StepSizeType stepSizeType_;
 
  201     Scalar maxStepSizeIncreaseFactor_;
 
  202     Scalar minStepSizeDecreaseFactor_;
 
  203     int numStepFailures_;
 
  204     int maxStepFailures_;
 
  206     Scalar errorRelativeTolerance_;
 
  207     Scalar errorAbsoluteTolerance_;
 
  210     RCP<const Thyra::VectorBase<Scalar> > x_;
 
  211     RCP<const Thyra::VectorBase<Scalar> > dx_;
 
  212     RCP<Thyra::VectorBase<Scalar> > errWtVec_;
 
  215     static const std::string initialStepSizeName_;
 
  216     static const double initialStepSizeDefault_;
 
  218     static const std::string minStepSizeName_;
 
  219     static const double minStepSizeDefault_;
 
  221     static const std::string maxStepSizeName_;
 
  222     static const double maxStepSizeDefault_;
 
  224     static const std::string maxStepSizeIncreaseFactorName_;
 
  225     static const double maxStepSizeIncreaseFactorDefault_;
 
  227     static const std::string minStepSizeDecreaseFactorName_;
 
  228     static const double minStepSizeDecreaseFactorDefault_;
 
  230     static const std::string maxStepFailuresName_;
 
  231     static const int maxStepFailuresDefault_;
 
  233     static const std::string errorRelativeToleranceName_;
 
  234     static const double errorRelativeToleranceDefault_;
 
  236     static const std::string errorAbsoluteToleranceName_;
 
  237     static const double errorAbsoluteToleranceDefault_;
 
  242     void setStepControlState_(StepControlStrategyState state);
 
  248 #endif // Rythmos_FIRSTORDERERROR_STEP_CONTROL_STRATEGY_DECL_H 
Base class for defining stepper functionality. 
 
void setParameterList(RCP< Teuchos::ParameterList > const ¶mList)
 
void nextStepSize(const StepperBase< Scalar > &stepper, Scalar *stepSize, StepSizeType *stepSizeType, int *order)
 
RCP< Teuchos::ParameterList > getNonconstParameterList()
 
bool supportsCloning() const 
 
The member functions in the StepControlStrategyBase move you between these states in the following fa...
 
void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const 
 
void setCorrection(const StepperBase< Scalar > &stepper, const RCP< const Thyra::VectorBase< Scalar > > &soln, const RCP< const Thyra::VectorBase< Scalar > > &ee, int solveStatus)
 
RCP< const Teuchos::ParameterList > getValidParameters() const 
 
RCP< Teuchos::ParameterList > unsetParameterList()
 
void setStepControlData(const StepperBase< Scalar > &stepper)
 
Step Control Strategy for first-order time integration. 
 
AttemptedStepStatusFlag rejectStep(const StepperBase< Scalar > &stepper)
 
StepControlStrategyState getCurrentState()
 
void initialize(const StepperBase< Scalar > &stepper)
 
bool acceptStep(const StepperBase< Scalar > &stepper, Scalar *LETValue)
 
RCP< StepControlStrategyBase< Scalar > > cloneStepControlStrategyAlgorithm() const 
 
void completeStep(const StepperBase< Scalar > &stepper)
 
void setRequestedStepSize(const StepperBase< Scalar > &stepper, const Scalar &stepSize, const StepSizeType &stepSizeType)