|
votca 2025.1-dev
|
Anderson mixing as convergence acceleration in SCF/fixed point problems. More...
#include <anderson_mixing.h>

Public Member Functions | |
| const Eigen::VectorXd | MixHistory () |
| void | UpdateOutput (const Eigen::VectorXd &newOutput) |
| void | UpdateInput (const Eigen::VectorXd &newInput) |
| void | Configure (const Index order, const double alpha) |
Private Attributes | |
| std::vector< Eigen::VectorXd > | input_ |
| std::vector< Eigen::VectorXd > | output_ |
| double | alpha_ = 0.7 |
| Index | order_ = 25 |
Anderson mixing as convergence acceleration in SCF/fixed point problems.
Keeps a history of input and output solution vectors during a self-consistent fixed-point procedure and determines a new solution from an optimized mixing. Requires specification of the order of the method (maximum history to take) and a mixing parameter.
B. Baumeier, Diploma Thesis, Appendix C (2005)
I. Ramiere and T. Helfer, Iterative Residual-Based Vector Methods to Accelerate Fixed Point Iterations, Comput. Math. Appl. 70, 2210 (2015)
Definition at line 46 of file anderson_mixing.h.
| void votca::xtp::Anderson::Configure | ( | const Index | order, |
| const double | alpha ) |
Definition at line 29 of file anderson_mixing.cc.
| const Eigen::VectorXd votca::xtp::Anderson::MixHistory | ( | ) |
Definition at line 52 of file anderson_mixing.cc.
| void votca::xtp::Anderson::UpdateInput | ( | const Eigen::VectorXd & | newInput | ) |
Definition at line 44 of file anderson_mixing.cc.
| void votca::xtp::Anderson::UpdateOutput | ( | const Eigen::VectorXd & | newOutput | ) |
Definition at line 34 of file anderson_mixing.cc.
|
private |
Definition at line 58 of file anderson_mixing.h.
|
private |
Definition at line 55 of file anderson_mixing.h.
|
private |
Definition at line 59 of file anderson_mixing.h.
|
private |
Definition at line 56 of file anderson_mixing.h.