A Module For Geometry Optimization
Create a new guess at the Density Matrix after updating the geometry. Based on the purification algorithm in \cite niklasson2010trace .
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Matrix_ps), | intent(in) | :: | PreviousDensity | Previous density to extrapolate from. |
||
type(Matrix_ps), | intent(in) | :: | Overlap | The overlap matrix of the new geometry. |
||
integer, | intent(in) | :: | nel | The number of electrons. |
||
type(Matrix_ps), | intent(inout) | :: | NewDensity | The extrapolated density. |
||
type(SolverParameters_t), | intent(in), | optional | :: | solver_parameters_in | Parameters for the solver |
Create a new guess at the Density Matrix after updating the geometry. Based on the lowdin algorithm in \cite exner2002comparison .
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Matrix_ps), | intent(in) | :: | PreviousDensity | THe previous density to extrapolate from. |
||
type(Matrix_ps), | intent(in) | :: | OldOverlap | The old overlap matrix from the previous geometry. |
||
type(Matrix_ps), | intent(in) | :: | NewOverlap | The new overlap matrix from the current geometry. |
||
type(Matrix_ps), | intent(inout) | :: | NewDensity | The extrapolated density. |
||
type(SolverParameters_t), | intent(in), | optional | :: | solver_parameters_in | Parameters for the solver |