|
QUDA
0.9.0
|
#include <multigrid.h>

Public Member Functions | |
| multigrid_solver (QudaMultigridParam &mg_param, TimeProfile &profile) | |
| virtual | ~multigrid_solver () |
Public Attributes | |
| Dirac * | d |
| Dirac * | dSmooth |
| Dirac * | dSmoothSloppy |
| DiracM * | m |
| DiracM * | mSmooth |
| DiracM * | mSmoothSloppy |
| std::vector< ColorSpinorField * > | B |
| MGParam * | mgParam |
| MG * | mg |
| TimeProfile & | profile |
This is an object that captures an entire MG preconditioner state. A bit of a hack at the moment, this is used to allow us to store and reuse the mg solver between solves. This is use by the newMultigridQuda and destroyMultigridQuda interface functions.
Definition at line 382 of file multigrid.h.
| multigrid_solver::multigrid_solver | ( | QudaMultigridParam & | mg_param, |
| TimeProfile & | profile | ||
| ) |
Definition at line 2297 of file interface_quda.cpp.
References B, checkGauge(), quda::ColorSpinorParam::create, quda::Dirac::create(), QudaGaugeParam_s::cuda_prec_sloppy, cudaGauge, d, dSmooth, dSmoothSloppy, errorQuda, getVerbosity(), QudaMultigridParam_s::gflops, fused_exterior_ndeg_tm_dslash_cuda_gen::i, QudaMultigridParam_s::invert_param, m, mg, mgParam, mSmooth, mSmoothSloppy, QudaMultigridParam_s::n_level, QudaMultigridParam_s::n_vec, param, printfQuda, printQudaMultigridParam(), profile, pushVerbosity(), QUDA_CPU_FIELD_LOCATION, QUDA_DEBUG_VERBOSE, QUDA_DIRECT_PC_SOLVE, QUDA_DIRECT_SOLVE, QUDA_MATPC_SOLUTION, QUDA_MATPCDAG_MATPC_SOLUTION, QUDA_MAX_MG_LEVEL, QUDA_NORMOP_PC_SOLVE, quda::QUDA_PROFILE_INIT, QUDA_ZERO_FIELD_CREATE, QudaMultigridParam_s::secs, quda::setDiracPreParam(), quda::setDiracSloppyParam(), QudaMultigridParam_s::smoother_solve_type, quda::SolverParam::updateInvertParam(), and quda::LatticeField::X().

|
inlinevirtual |
Definition at line 400 of file multigrid.h.
References B, d, dSmooth, dSmoothSloppy, fused_exterior_ndeg_tm_dslash_cuda_gen::i, m, mg, mgParam, mSmooth, mSmoothSloppy, profile, and quda::QUDA_PROFILE_FREE.
| std::vector<ColorSpinorField*> quda::multigrid_solver::B |
Definition at line 391 of file multigrid.h.
Referenced by multigrid_solver(), and ~multigrid_solver().
| Dirac* quda::multigrid_solver::d |
Definition at line 383 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| Dirac* quda::multigrid_solver::dSmooth |
Definition at line 384 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| Dirac* quda::multigrid_solver::dSmoothSloppy |
Definition at line 385 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| DiracM* quda::multigrid_solver::m |
Definition at line 387 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| MG* quda::multigrid_solver::mg |
Definition at line 395 of file multigrid.h.
Referenced by quda::Solver::create(), multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| MGParam* quda::multigrid_solver::mgParam |
Definition at line 393 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| DiracM* quda::multigrid_solver::mSmooth |
Definition at line 388 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| DiracM* quda::multigrid_solver::mSmoothSloppy |
Definition at line 389 of file multigrid.h.
Referenced by multigrid_solver(), updateMultigridQuda(), and ~multigrid_solver().
| TimeProfile& quda::multigrid_solver::profile |
Definition at line 396 of file multigrid.h.
Referenced by multigrid_solver(), and ~multigrid_solver().
1.8.14