|
QUDA
v1.1.0
A library for QCD on GPUs
|
#include <invert_quda.h>
Inheritance diagram for quda::CGNR:Public Member Functions | |
| CGNR (const DiracMatrix &mat, const DiracMatrix &matSloppy, const DiracMatrix &matPrecon, const DiracMatrix &matEig, SolverParam ¶m, TimeProfile &profile) | |
| virtual | ~CGNR () |
| void | operator() (ColorSpinorField &out, ColorSpinorField &in) |
| Run CG. More... | |
| virtual bool | hermitian () |
Public Member Functions inherited from quda::CG | |
| CG (const DiracMatrix &mat, const DiracMatrix &matSloppy, const DiracMatrix &matPrecon, const DiracMatrix &matEig, SolverParam ¶m, TimeProfile &profile) | |
| virtual | ~CG () |
| void | operator() (ColorSpinorField &out, ColorSpinorField &in, ColorSpinorField *p_init, double r2_old_init) |
| Solve re-using an initial Krylov space defined by an initial r2_old_init and search direction p_init. More... | |
| void | blocksolve (ColorSpinorField &out, ColorSpinorField &in) |
Public Member Functions inherited from quda::Solver | |
| Solver (const DiracMatrix &mat, const DiracMatrix &matSloppy, const DiracMatrix &matPrecon, const DiracMatrix &matEig, SolverParam ¶m, TimeProfile &profile) | |
| virtual | ~Solver () |
| const DiracMatrix & | M () |
| const DiracMatrix & | Msloppy () |
| const DiracMatrix & | Mprecon () |
| const DiracMatrix & | Meig () |
| bool | convergence (double r2, double hq2, double r2_tol, double hq_tol) |
| bool | convergenceHQ (double r2, double hq2, double r2_tol, double hq_tol) |
| Test for HQ solver convergence – ignore L2 residual. More... | |
| bool | convergenceL2 (double r2, double hq2, double r2_tol, double hq_tol) |
| Test for L2 solver convergence – ignore HQ residual. More... | |
| void | PrintStats (const char *name, int k, double r2, double b2, double hq2) |
| Prints out the running statistics of the solver (requires a verbosity of QUDA_VERBOSE) More... | |
| void | PrintSummary (const char *name, int k, double r2, double b2, double r2_tol, double hq_tol) |
| Prints out the summary of the solver convergence (requires a verbosity of QUDA_SUMMARIZE). Assumes SolverParam.true_res and SolverParam.true_res_hq has been set. More... | |
| double | precisionEpsilon (QudaPrecision prec=QUDA_INVALID_PRECISION) const |
| Returns the epsilon tolerance for a given precision, by default returns the solver precision. More... | |
| void | constructDeflationSpace (const ColorSpinorField &meta, const DiracMatrix &mat) |
| Constructs the deflation space and eigensolver. More... | |
| void | destroyDeflationSpace () |
| Destroy the allocated deflation space. More... | |
| void | extendSVDDeflationSpace () |
| Extends the deflation space to twice its size for SVD deflation. More... | |
| void | injectDeflationSpace (std::vector< ColorSpinorField * > &defl_space) |
| Injects a deflation space into the solver from the vector argument. Note the input space is reduced to zero size as a result of calling this function, with responsibility for the space transferred to the solver. More... | |
| void | extractDeflationSpace (std::vector< ColorSpinorField * > &defl_space) |
| Extracts the deflation space from the solver to the vector argument. Note the solver deflation space is reduced to zero size as a result of calling this function, with responsibility for the space transferred to the argument. More... | |
| int | deflationSpaceSize () const |
| Returns the size of deflation space. More... | |
| void | setDeflateCompute (bool flag) |
| Sets the deflation compute boolean. More... | |
| void | setRecomputeEvals (bool flag) |
| Sets the recompute evals boolean. More... | |
| virtual double | flops () const |
| Return flops. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from quda::Solver | |
| static Solver * | create (SolverParam ¶m, const DiracMatrix &mat, const DiracMatrix &matSloppy, const DiracMatrix &matPrecon, const DiracMatrix &matEig, TimeProfile &profile) |
| Solver factory. More... | |
| static double | stopping (double tol, double b2, QudaResidualType residual_type) |
| Set the solver L2 stopping condition. More... | |
Protected Attributes inherited from quda::Solver | |
| const DiracMatrix & | mat |
| const DiracMatrix & | matSloppy |
| const DiracMatrix & | matPrecon |
| const DiracMatrix & | matEig |
| SolverParam & | param |
| TimeProfile & | profile |
| int | node_parity |
| EigenSolver * | eig_solve |
| bool | deflate_init |
| bool | deflate_compute |
| bool | recompute_evals |
| std::vector< ColorSpinorField * > | evecs |
| std::vector< Complex > | evals |
Definition at line 697 of file invert_quda.h.
| quda::CGNR::CGNR | ( | const DiracMatrix & | mat, |
| const DiracMatrix & | matSloppy, | ||
| const DiracMatrix & | matPrecon, | ||
| const DiracMatrix & | matEig, | ||
| SolverParam & | param, | ||
| TimeProfile & | profile | ||
| ) |
Definition at line 152 of file inv_cg_quda.cpp.
|
virtual |
Definition at line 164 of file inv_cg_quda.cpp.
|
inlinevirtual |
Reimplemented from quda::CG.
Definition at line 715 of file invert_quda.h.
|
virtual |
Run CG.
| out | Solution vector. |
| in | Right-hand side. |
Reimplemented from quda::CG.
Definition at line 172 of file inv_cg_quda.cpp.