|
Grid 0.7.0
|
#include <GeneralisedMinimalResidual.h>
Public Member Functions | |
| GeneralisedMinimalResidual (RealD tol, Integer maxit, Integer restart_length, bool err_on_no_conv=true) | |
| void | operator() (LinearOperatorBase< Field > &LinOp, const Field &src, Field &psi) |
| RealD | outerLoopBody (LinearOperatorBase< Field > &LinOp, const Field &src, Field &psi, RealD rsq) |
| void | arnoldiStep (LinearOperatorBase< Field > &LinOp, std::vector< Field > &v, Field &w, int iter) |
| void | qrUpdate (int iter) |
| void | computeSolution (std::vector< Field > const &v, Field &psi, int iter) |
| virtual void | operator() (LinearOperatorBase< Field > &Linop, const std::vector< Field > &in, std::vector< Field > &out) |
Data Fields | |
| bool | ErrorOnNoConverge |
| RealD | Tolerance |
| Integer | MaxIterations |
| Integer | RestartLength |
| Integer | MaxNumberOfRestarts |
| Integer | IterationCount |
| GridStopWatch | MatrixTimer |
| GridStopWatch | LinalgTimer |
| GridStopWatch | QrTimer |
| GridStopWatch | CompSolutionTimer |
| Eigen::MatrixXcd | H |
| std::vector< ComplexD > | y |
| std::vector< ComplexD > | gamma |
| std::vector< ComplexD > | c |
| std::vector< ComplexD > | s |
Definition at line 35 of file GeneralisedMinimalResidual.h.
|
inline |
Definition at line 62 of file GeneralisedMinimalResidual.h.
References c, ErrorOnNoConverge, gamma, H, MaxIterations, MaxNumberOfRestarts, RestartLength, s, Tolerance, and y.
|
inlinevirtual |
Implements OperatorFunction< Field >.
Definition at line 77 of file GeneralisedMinimalResidual.h.
References axpy(), CompSolutionTimer, conformable(), GridStopWatch::Elapsed(), ErrorOnNoConverge, GridLogIterative, GridLogMessage, IterationCount, LinalgTimer, MatrixTimer, MaxNumberOfRestarts, norm2(), LinearOperatorBase< Field >::Op(), outerLoopBody(), QrTimer, sqrt(), GridStopWatch::Start(), GridStopWatch::Stop(), and Tolerance.
|
inline |
Definition at line 141 of file GeneralisedMinimalResidual.h.
References arnoldiStep(), computeSolution(), gamma, GridLogIterative, IterationCount, LinalgTimer, MatrixTimer, MaxIterations, norm2(), LinearOperatorBase< Field >::Op(), qrUpdate(), RestartLength, and sqrt().
Referenced by operator()().
|
inline |
Definition at line 188 of file GeneralisedMinimalResidual.h.
References H, innerProduct(), LinalgTimer, MatrixTimer, norm2(), LinearOperatorBase< Field >::Op(), and sqrt().
Referenced by outerLoopBody().
|
inline |
Definition at line 205 of file GeneralisedMinimalResidual.h.
References c, conjugate(), gamma, H, QrTimer, s, and sqrt().
Referenced by outerLoopBody().
|
inline |
Definition at line 228 of file GeneralisedMinimalResidual.h.
References CompSolutionTimer, gamma, H, and y.
Referenced by outerLoopBody().
|
inlinevirtualinherited |
Reimplemented in BlockConjugateGradient< Field >.
Definition at line 625 of file LinearOperator.h.
| bool Grid::GeneralisedMinimalResidual< Field >::ErrorOnNoConverge |
Definition at line 39 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and operator()().
| RealD Grid::GeneralisedMinimalResidual< Field >::Tolerance |
Definition at line 42 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and operator()().
| Integer Grid::GeneralisedMinimalResidual< Field >::MaxIterations |
Definition at line 44 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and outerLoopBody().
| Integer Grid::GeneralisedMinimalResidual< Field >::RestartLength |
Definition at line 45 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and outerLoopBody().
| Integer Grid::GeneralisedMinimalResidual< Field >::MaxNumberOfRestarts |
Definition at line 46 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and operator()().
| Integer Grid::GeneralisedMinimalResidual< Field >::IterationCount |
Definition at line 47 of file GeneralisedMinimalResidual.h.
Referenced by operator()(), and outerLoopBody().
| GridStopWatch Grid::GeneralisedMinimalResidual< Field >::MatrixTimer |
Definition at line 50 of file GeneralisedMinimalResidual.h.
Referenced by arnoldiStep(), operator()(), and outerLoopBody().
| GridStopWatch Grid::GeneralisedMinimalResidual< Field >::LinalgTimer |
Definition at line 51 of file GeneralisedMinimalResidual.h.
Referenced by arnoldiStep(), operator()(), and outerLoopBody().
| GridStopWatch Grid::GeneralisedMinimalResidual< Field >::QrTimer |
Definition at line 52 of file GeneralisedMinimalResidual.h.
Referenced by operator()(), and qrUpdate().
| GridStopWatch Grid::GeneralisedMinimalResidual< Field >::CompSolutionTimer |
Definition at line 53 of file GeneralisedMinimalResidual.h.
Referenced by computeSolution(), and operator()().
| Eigen::MatrixXcd Grid::GeneralisedMinimalResidual< Field >::H |
Definition at line 55 of file GeneralisedMinimalResidual.h.
Referenced by arnoldiStep(), computeSolution(), GeneralisedMinimalResidual(), and qrUpdate().
| std::vector<ComplexD> Grid::GeneralisedMinimalResidual< Field >::y |
Definition at line 57 of file GeneralisedMinimalResidual.h.
Referenced by computeSolution(), and GeneralisedMinimalResidual().
| std::vector<ComplexD> Grid::GeneralisedMinimalResidual< Field >::gamma |
Definition at line 58 of file GeneralisedMinimalResidual.h.
Referenced by computeSolution(), GeneralisedMinimalResidual(), outerLoopBody(), and qrUpdate().
| std::vector<ComplexD> Grid::GeneralisedMinimalResidual< Field >::c |
Definition at line 59 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and qrUpdate().
| std::vector<ComplexD> Grid::GeneralisedMinimalResidual< Field >::s |
Definition at line 60 of file GeneralisedMinimalResidual.h.
Referenced by GeneralisedMinimalResidual(), and qrUpdate().