|
QUDA
0.9.0
|
#include <lanczos_quda.h>


Public Member Functions | |
| Eig_Solver (QudaEigParam &eigParam, TimeProfile &profile) | |
| virtual | ~Eig_Solver () |
| virtual void | operator() (double *alpha, double *beta, cudaColorSpinorField **Eig_Vec, cudaColorSpinorField &r, cudaColorSpinorField &Apsi, int k0, int m)=0 |
| bool | convergence (const double &r2, const double &hq2, const double &r2_tol, const double &hq_tol) |
| void | PrintStats (const char *, int k, const double &r2, const double &b2, const double &hq2) |
| void | PrintSummary (const char *name, int k, const double &r2, const double &b2) |
| void | GrandSchm_test (cudaColorSpinorField &psi, cudaColorSpinorField **Eig_Vec, int Nvec, double *delta) |
Static Public Member Functions | |
| static Eig_Solver * | create (QudaEigParam ¶m, RitzMat &ritz_mat, TimeProfile &profile) |
Protected Attributes | |
| QudaEigParam & | eigParam |
| TimeProfile & | profile |
New object class for solving an eigen problems, currently Lanczos operator is implemented
Definition at line 16 of file lanczos_quda.h.
|
inline |
Definition at line 23 of file lanczos_quda.h.
|
inlinevirtual |
Definition at line 24 of file lanczos_quda.h.
| bool quda::Eig_Solver::convergence | ( | const double & | r2, |
| const double & | hq2, | ||
| const double & | r2_tol, | ||
| const double & | hq_tol | ||
| ) |
Not implemented yet!!!, Checkthe eig solver convergence
Definition at line 34 of file eig_solver.cpp.
|
static |
Definition at line 12 of file eig_solver.cpp.
References errorQuda, param, profile, QUDA_IMP_RST_LANCZOS, QUDA_LANCZOS, and quda::report().
Referenced by lanczosQuda().


| void quda::Eig_Solver::GrandSchm_test | ( | cudaColorSpinorField & | psi, |
| cudaColorSpinorField ** | Eig_Vec, | ||
| int | Nvec, | ||
| double * | delta | ||
| ) |
Do the GrandSchmit orthogonalization and check the orthogonality of eigen vectors
Definition at line 47 of file eig_solver.cpp.
References quda::blas::caxpy(), quda::blas::cDotProduct(), delta, e, fabs(), getVerbosity(), fused_exterior_ndeg_tm_dslash_cuda_gen::i, printf(), and QUDA_VERBOSE.
Referenced by quda::Lanczos::operator()().


|
pure virtual |
Implemented in quda::Lanczos.
| void quda::Eig_Solver::PrintStats | ( | const char * | name, |
| int | k, | ||
| const double & | r2, | ||
| const double & | b2, | ||
| const double & | hq2 | ||
| ) |
Not implemented yet!!!, Prints out the running statistics of the solver
Definition at line 40 of file eig_solver.cpp.
| void quda::Eig_Solver::PrintSummary | ( | const char * | name, |
| int | k, | ||
| const double & | r2, | ||
| const double & | b2 | ||
| ) |
Prints out the summary of the solver convergence (requires a versbosity of QUDA_SUMMARIZE). Assumes QudaEigParam.true_res and QudaEigParam.true_res_hq has been set
Definition at line 44 of file eig_solver.cpp.
|
protected |
Definition at line 19 of file lanczos_quda.h.
|
protected |
Definition at line 20 of file lanczos_quda.h.
Referenced by create(), and quda::Lanczos::operator()().
1.8.14