Invert Kohn-Sham equations to get effective potential for a given electron density. More...
#include <RadialSchrodinger.h>
Public Member Functions | |
| InvertKS (const RadialFunctionR &nTarget) | |
| Initialize for a given target electron density nTarget. | |
| RadialFunctionR | getTau () |
| Get the orbital KE density. | |
| void | step (const diagMatrix &dV, double alpha) |
| Move the state in parameter space along direction dir with scale alpha. | |
| double | compute (diagMatrix *E_V) |
| Returns the objective function at the current state and store the gradient in grad, if non-null. | |
| diagMatrix | precondition (const diagMatrix &grad) |
Public Member Functions inherited from Minimizable< diagMatrix > | |
| virtual bool | report (int iter) |
| virtual void | constrain (diagMatrix &) |
| virtual double | sync (double x) const |
| Override to synchronize scalars over MPI processes (if the same minimization is happening in sync over many processes) | |
| double | minimize (const MinimizeParams ¶ms) |
| Minimize this objective function with algorithm controlled by params and return the minimized value. | |
| void | fdTest (const MinimizeParams ¶ms) |
Invert Kohn-Sham equations to get effective potential for a given electron density.
|
virtual |
Override to enable preconditioning: return the preconditioned gradient, given the gradient The last call to compute() is guaranteed to be at the same position, so a cached result may be returned
Reimplemented from Minimizable< diagMatrix >.