#include <LOCA_StepSize_Constant.H>
Inheritance diagram for LOCA::StepSize::Constant:
Public Member Functions | |
| Constant (NOX::Parameter::List ¶ms) | |
| Constructor. | |
| virtual | ~Constant () |
| Destructor. | |
| virtual NOX::Abstract::Group::ReturnType | reset (NOX::Parameter::List ¶ms) |
| Reset parameters given above. | |
| virtual NOX::Abstract::Group::ReturnType | compute (LOCA::Continuation::ExtendedGroup &curGroup, const LOCA::Continuation::ExtendedVector &predictor, const NOX::Solver::Generic &solver, const LOCA::Abstract::Iterator::StepStatus &stepStatus, const LOCA::Stepper &stepper, double &stepSize) |
| Compute the step size as described above. | |
| virtual NOX::Abstract::Group::ReturnType | compute (LOCA::MultiContinuation::ExtendedGroup &curGroup, const LOCA::MultiContinuation::ExtendedVector &predictor, const NOX::Solver::Generic &solver, const LOCA::Abstract::Iterator::StepStatus &stepStatus, const LOCA::NewStepper &stepper, double &stepSize) |
| Compute the step size as described above. | |
| virtual double | getPrevStepSize () const |
| Returns previous step size. | |
| virtual double | getStartStepSize () const |
| Returns initial step size. | |
Protected Member Functions | |
| virtual NOX::Abstract::Group::ReturnType | clipStepSize (double &stepSize) |
| Clip the computed step size to the bounds given by the maximum and minimum step sizes. | |
Protected Attributes | |
| double | maxStepSize |
| Maximum step size. | |
| double | minStepSize |
| Minimum step size. | |
| double | startStepSize |
| Initial step size. | |
| double | failedFactor |
| Factor by which step size is reduced after a failed step. | |
| double | successFactor |
| Factor by which step size is increased after a successful step. | |
| double | prevStepSize |
| Previous step size. | |
| bool | isFirstStep |
| Flag indicating if this is the first step. | |
This class implements a roughly constant step size control strategy. If the previous step was sucessful, the new step size is set equal to the old, otherwise the step size is cut by a supplied factor. Once a sucessful step is made, the step size is increased by a supplied factor until the initial step size is reached.
This class also incorporates rescaling of the continuation parameter when calculating a step size (common in arc-length continuation). For the first continuation step, the step size is chosen so that step size times the parameter component of the predictor is equal to the initial step size. From then on, the step size is multiplied by the step size scale factor (see LOCA::Continuation::ExtendedGroup) which incorporates rescaling of the continuation parameter.
The parameters used by this class supplied in the constructor or reset method are:
)
|
|
Clip the computed step size to the bounds given by the maximum and minimum step sizes. Returns NOX::Abstract::Group::Failed if the computed step size is smaller than the minimum step size |
|
||||||||||||||||||||||||||||
|
Compute the step size as described above. Returns NOX::Abstract::Group::Failed if the computed step size is smaller than the minimum step size Implements LOCA::StepSize::Generic. Reimplemented in LOCA::StepSize::Adaptive. |
|
||||||||||||||||||||||||||||
|
Compute the step size as described above. Returns NOX::Abstract::Group::Failed if the computed step size is smaller than the minimum step size Implements LOCA::StepSize::Generic. Reimplemented in LOCA::StepSize::Adaptive. |
1.3.9.1