KASKADE 7 development version
|
A Newton method that uses a pointwise damping strategy to cope with bounds. More...
#include <newton_damped.hh>
A Newton method that uses a pointwise damping strategy to cope with bounds.
Definition at line 229 of file newton_damped.hh.
Public Types | |
typedef ModifiedCovariantNewtonParameters | Parameters |
Protected Member Functions | |
void | setDesiredRelativeAccuracy (double ra) |
set the desired accuracy More... | |
void | initialize () |
Called before Iteration. More... | |
void | predictNextDampingFactor (AbstractFunctionSpaceElement &correction) |
Should compute a damping factor. More... | |
void | initNewtonStep () |
virtual AcceptanceTest | evaluateTrialIterate (AbstractFunctionSpaceElement const &trialIterate, AbstractFunctionSpaceElement const &correction, AbstractLinearization const &lin) |
void | updateIterate (AbstractFunctionSpaceElement &iterate, AbstractFunctionSpaceElement &trialIterate, AbstractLinearization const &lin) |
update an accepted iterate, default: iterate=trialIterate More... | |
Convergence | convergenceTest (AbstractFunctionSpaceElement const &correction, AbstractFunctionSpaceElement const &iterate) |
Return true, if convergence is detected, false otherwise. More... | |
RegularityTest | regularityTest (double scalingFactor) |
virtual void | finalize (int) |
Called after Iteration. More... | |
virtual void | logQuantities () |
Performs logging of quantities. More... | |
virtual double & | dampingFactor () |
Return a damping factor. More... | |
virtual double | maxSteps () |
return the maximal number of steps More... | |
virtual void | terminationMessage (int flag) |
int | algorithmWrapper () |
Run algorithm, completely with initialization and finalization. More... | |
int | oneStepWrapper () |
Run one step of algorithm. More... | |
Protected Attributes | |
AbstractFunctional * | functional |
AbstractNewtonDirection & | linearSolver |
AbstractChart & | chart |
AbstractNorm & | norm |
std::unique_ptr< AbstractFunctionSpaceElement > | iterate |
std::unique_ptr< AbstractFunctionSpaceElement > | trialIterate |
std::unique_ptr< AbstractFunctionSpaceElement > | correction |
std::unique_ptr< AbstractLinearization > | newtonLinearization |
std::unique_ptr< AbstractLinearization > | simplifiedLinearization |
AbstractLinearization * | newtonPtr |
int | step |
int | report |
Definition at line 233 of file newton_damped.hh.
|
inline |
Definition at line 236 of file newton_damped.hh.
|
protectedinherited |
Run algorithm, completely with initialization and finalization.
|
inlineinherited |
Definition at line 125 of file newton_base.hh.
|
inlinevirtualinherited |
Reimplemented in Kaskade::DampedCovariantNewtonMethod.
Definition at line 134 of file newton_base.hh.
|
protectedvirtual |
Return true, if convergence is detected, false otherwise.
Implements Kaskade::NewtonsMethod.
|
inlineprotectedvirtualinherited |
Return a damping factor.
Reimplemented in Kaskade::DampedCovariantNewtonMethod.
Definition at line 161 of file newton_base.hh.
|
protectedvirtual |
function to evaluate the quality of the trial iterate. returns true if trial iterate is acceptable as new iterate i.e. if some damping factor is of appropriate size
Implements Kaskade::NewtonsMethod.
|
protectedvirtualinherited |
Called after Iteration.
Reimplemented from Kaskade::Algorithm.
|
inlineinherited |
Definition at line 139 of file newton_base.hh.
|
inlineinherited |
Definition at line 141 of file newton_base.hh.
|
inlinevirtualinherited |
Reimplemented in Kaskade::DampedCovariantNewtonMethod.
Definition at line 115 of file newton_base.hh.
|
inlinevirtualinherited |
Definition at line 127 of file newton_base.hh.
|
protectedvirtual |
Called before Iteration.
Reimplemented from Kaskade::NewtonsMethod.
|
protectedvirtual |
Reimplemented from Kaskade::NewtonsMethod.
|
inlineprotectedvirtualinherited |
Performs logging of quantities.
Definition at line 150 of file newton_base.hh.
|
inlineprotectedvirtualinherited |
return the maximal number of steps
Definition at line 163 of file newton_base.hh.
|
inherited |
Perform one Newton step (which may be several trial steps, if damping is applied)
|
protectedinherited |
Run one step of algorithm.
|
inlineinherited |
Definition at line 181 of file algorithm_base.hh.
|
inlineprotectedvirtual |
Should compute a damping factor.
Reimplemented from Kaskade::NewtonsMethod.
Definition at line 248 of file newton_damped.hh.
|
protectedvirtual |
trial iterate = iterate + scalingFactor * correction if this was successful, return RegularityTest::Passed, otherwise (e.g. if scalingFactor is too small) RegularityTest::Failed false will lead to an unsuccessful exit of algorithm
Reimplemented from Kaskade::NewtonsMethod.
|
inlineinherited |
Definition at line 182 of file algorithm_base.hh.
|
inlineinherited |
Reset all algorithmic parameters to their default values.
Definition at line 121 of file newton_base.hh.
|
inlineinherited |
Definition at line 105 of file newton_base.hh.
|
inlineinherited |
set the desired accuracy
Definition at line 117 of file newton_base.hh.
|
inlineprotectedvirtual |
set the desired accuracy
Reimplemented from Kaskade::NewtonsMethod.
Definition at line 244 of file newton_damped.hh.
|
inherited |
Solve the system f=0 with starting value x. On (successful) exit, the solution is x, otherwise it is left unmodified.
|
inlineinherited |
Definition at line 123 of file newton_base.hh.
Referenced by Kaskade::InteriorPointSqrtModel::finalizeCorrector(), and Kaskade::InteriorPointSlopeEstimate::finalizeCorrector().
|
protectedvirtualinherited |
Reimplemented from Kaskade::Algorithm.
|
protectedvirtual |
update an accepted iterate, default: iterate=trialIterate
Reimplemented from Kaskade::NewtonsMethod.
|
protectedinherited |
Definition at line 232 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::computeTrialIterate().
|
protectedinherited |
Definition at line 236 of file newton_base.hh.
Referenced by predictNextDampingFactor().
|
protectedinherited |
Definition at line 230 of file newton_base.hh.
|
protectedinherited |
Definition at line 236 of file newton_base.hh.
|
protectedinherited |
Definition at line 231 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::getSearchDirection(), and Kaskade::NewtonsMethod::resolve().
|
protectedinherited |
Definition at line 238 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::getLastLinearization(), and Kaskade::NewtonsMethod::getSearchDirection().
|
protectedinherited |
Definition at line 240 of file newton_base.hh.
|
protectedinherited |
Definition at line 233 of file newton_base.hh.
Referenced by predictNextDampingFactor().
|
protectedinherited |
Definition at line 193 of file algorithm_base.hh.
Referenced by Kaskade::Algorithm::reportOnIteration().
|
protectedinherited |
Definition at line 239 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::getLastSimplifiedLinearization().
|
protectedinherited |
Definition at line 242 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::stepsPerformed().
|
protectedinherited |
Definition at line 236 of file newton_base.hh.
Referenced by Kaskade::NewtonsMethod::computeTrialIterate().