ArmijoConditions Class Reference

Class satisfying the Armijo line search conditions. More...

Inheritance diagram for ArmijoConditions:
[legend]
Collaboration diagram for ArmijoConditions:
[legend]

Public Member Functions

 TypeName ("ArmijoConditions")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, ArmijoConditions, dictionary,(const dictionary &dict, const Time &time),(dict))
 
 ArmijoConditions (const dictionary &dict, const Time &time)
 Construct from components. More...
 
virtual ~ArmijoConditions ()=default
 
virtual bool converged ()
 Return the correction of the design variables. More...
 
virtual void updateStep ()
 
- Public Member Functions inherited from lineSearch
 TypeName ("lineSearch")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, lineSearch, dictionary,(const dictionary &dict, const Time &time),(dict, time))
 
 lineSearch (const dictionary &dict, const Time &time)
 Construct from components. More...
 
virtual ~lineSearch ()=default
 Destructor. More...
 
virtual void setDeriv (const scalar deriv)
 Set objective derivative. More...
 
void setDirection (const scalarField &direction)
 Set direction. More...
 
void setNewMeritValue (const scalar value)
 Set new objective value. More...
 
void setOldMeritValue (const scalar value)
 Set old objective value. More...
 
virtual void reset ()
 Reset step to initial value. More...
 
label maxIters () const
 Get max number of iterations. More...
 
scalar step () const
 Get current step. More...
 
virtual bool converged ()=0
 Return the correction of the design variables. More...
 
virtual void updateStep ()=0
 
virtual void updateStep (const scalar newStep)
 Update the step using the supplied value. More...
 
virtual lineSearchoperator++ ()
 
virtual lineSearchoperator++ (int)
 Postfix increment. Necessary for compilation. More...
 

Protected Attributes

scalar c1_
 
- Protected Attributes inherited from lineSearch
const dictionary dict_
 Subdict within updateMethod. More...
 
IOdictionary lineSearchDict_
 IOdictionary under time/uniform for continuation. More...
 
scalar directionalDeriv_
 Directional derivative of the merit function. More...
 
scalarField direction_
 Update direction. More...
 
scalar oldMeritValue_
 Old merit value from this opt cycle. More...
 
scalar newMeritValue_
 New merit value from this opt cycle. More...
 
scalar prevMeritDeriv_
 Merit directional deriv from the previous opt cycle. More...
 
scalar initialStep_
 Correction multiplier at the first step of line search. More...
 
scalar minStep_
 Minimum allowed correction multiplier. More...
 
scalar step_
 Correction multiplier. More...
 
label iter_
 Inner line search iteration. More...
 
label maxIters_
 Maximum line search iterations. More...
 
bool extrapolateInitialStep_
 
autoPtr< stepUpdatestepUpdate_
 Mechanism to update method if line search conditions are not set. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from lineSearch
static autoPtr< lineSearchNew (const dictionary &dict, const Time &time)
 Return a reference to the selected turbulence model. More...
 
- Protected Member Functions inherited from lineSearch
const dictionarycoeffsDict ()
 Optional coeffs dict. More...
 

Detailed Description

Class satisfying the Armijo line search conditions.

Source files

Definition at line 52 of file ArmijoConditions.H.

Constructor & Destructor Documentation

◆ ArmijoConditions()

ArmijoConditions ( const dictionary dict,
const Time time 
)

Construct from components.

Definition at line 49 of file ArmijoConditions.C.

◆ ~ArmijoConditions()

virtual ~ArmijoConditions ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "ArmijoConditions"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
ArmijoConditions  ,
dictionary  ,
(const dictionary &dict, const Time &time)  ,
(dict  
)

◆ converged()

bool converged ( )
virtual

Return the correction of the design variables.

Implements lineSearch.

Definition at line 62 of file ArmijoConditions.C.

References Foam::endl(), and Foam::Info.

Here is the call graph for this function:

◆ updateStep()

void updateStep ( )
virtual

Update the line search step based on the specific line search strategy, e.g. bisection, quadratic fit, etc.

Implements lineSearch.

Definition at line 72 of file ArmijoConditions.C.

References Foam::endl(), and Foam::Info.

Here is the call graph for this function:

Member Data Documentation

◆ c1_

scalar c1_
protected

Multiplier of the merit function reduction computed using a first-order Taylor expansion

Definition at line 62 of file ArmijoConditions.H.


The documentation for this class was generated from the following files: