JDFTx  1.2.0
IonicMinimizer Class Reference
Inheritance diagram for IonicMinimizer:
Minimizable< IonicGradient >

Public Member Functions

 IonicMinimizer (Everything &e)
 
void step (const IonicGradient &dir, double alpha)
 Move the state in parameter space along direction dir with scale alpha.
 
double compute (IonicGradient *grad, IonicGradient *Kgrad)
 Returns the objective function at the current state and store the gradient in grad and preconditioned gradient in Kgrad, if non-null.
 
bool report (int iter)
 
void constrain (IonicGradient &)
 Constrain search directions to the space of free directions for minimize.
 
double safeStepSize (const IonicGradient &dir) const
 Override to return maximum safe step size along a given direction. Steps can be arbitrarily large by default.
 
double sync (double x) const
 All processes minimize together; make sure scalars are in sync to round-off error.
 
double minimize (const MinimizeParams &params)
 minor addition to Minimizable::minimize to invoke charge analysis at final positions
 
- Public Member Functions inherited from Minimizable< IonicGradient >
double minimize (const MinimizeParams &params)
 Minimize this objective function with algorithm controlled by params and return the minimized value.
 
void fdTest (const MinimizeParams &params)
 

Static Public Attributes

static const double maxAtomTestDisplacement
 
static const double maxWfnsDragDisplacement
 

Member Function Documentation

bool IonicMinimizer::report ( int  iter)
virtual

Override for optional processing/reporting after each/every few iterations It should return whether the state was modified

Reimplemented from Minimizable< IonicGradient >.


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