QUDA
1.0.0
|
#include <quda.h>
QudaSolutionType QudaMultigridParam_s::coarse_grid_solution_type[QUDA_MAX_MG_LEVEL] |
The type of residual to send to the next coarse grid, and thus the type of solution to receive back from this coarse grid
Definition at line 586 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::MG::createCoarseSolver(), setMultigridParam(), and quda::MG::verify().
QudaBoolean QudaMultigridParam_s::coarse_guess |
Whether to use and initial guess during coarse grid deflation
Definition at line 639 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
QudaInverterType QudaMultigridParam_s::coarse_solver[QUDA_MAX_MG_LEVEL] |
The solver that wraps around the coarse grid correction and smoother
Definition at line 540 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
QudaCABasis QudaMultigridParam_s::coarse_solver_ca_basis[QUDA_MAX_MG_LEVEL] |
Basis to use for CA-CGN(E/R) coarse solver
Definition at line 549 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
int QudaMultigridParam_s::coarse_solver_ca_basis_size[QUDA_MAX_MG_LEVEL] |
Basis size for CACG coarse solver
Definition at line 552 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
double QudaMultigridParam_s::coarse_solver_ca_lambda_max[QUDA_MAX_MG_LEVEL] |
Maximum eigenvalue for Chebyshev CA basis
Definition at line 558 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
double QudaMultigridParam_s::coarse_solver_ca_lambda_min[QUDA_MAX_MG_LEVEL] |
Minimum eigenvalue for Chebyshev CA basis
Definition at line 555 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
int QudaMultigridParam_s::coarse_solver_maxiter[QUDA_MAX_MG_LEVEL] |
Maximum number of iterations for the solver that wraps around the coarse grid correction and smoother
Definition at line 546 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::reset(), and setMultigridParam().
double QudaMultigridParam_s::coarse_solver_tol[QUDA_MAX_MG_LEVEL] |
Tolerance for the solver that wraps around the coarse grid correction and smoother
Definition at line 543 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), and setMultigridParam().
QudaComputeNullVector QudaMultigridParam_s::compute_null_vector |
Whether to compute the null vectors or reload them
Definition at line 612 of file quda.h.
Referenced by quda::MG::MG(), printQudaMultigridParam(), and setMultigridParam().
QudaMultigridCycleType QudaMultigridParam_s::cycle_type[QUDA_MAX_MG_LEVEL] |
The type of multigrid cycle to perform at each level
Definition at line 592 of file quda.h.
Referenced by setMultigridParam().
QudaEigParam* QudaMultigridParam_s::eig_param[QUDA_MAX_MG_LEVEL] |
Definition at line 480 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::generateEigenVectors(), and main().
QudaBoolean QudaMultigridParam_s::generate_all_levels |
Whether to generate on all levels or just on level 0
Definition at line 615 of file quda.h.
Referenced by quda::MG::generateNullVectors(), quda::MG::MG(), printQudaMultigridParam(), quda::MG::reset(), and setMultigridParam().
int QudaMultigridParam_s::geo_block_size[QUDA_MAX_MG_LEVEL][QUDA_MAX_DIM] |
Geometric block sizes to use on each level
Definition at line 486 of file quda.h.
Referenced by quda::MGParam::MGParam(), quda::MG::reset(), and setMultigridParam().
double QudaMultigridParam_s::gflops |
The Gflops rate of the multigrid solver setup The time taken by the multigrid solver setup
Definition at line 642 of file quda.h.
Referenced by quda::multigrid_solver::multigrid_solver().
QudaBoolean QudaMultigridParam_s::global_reduction[QUDA_MAX_MG_LEVEL] |
Whether to use global reductions or not for the smoother / solver at each level
Definition at line 595 of file quda.h.
Referenced by setMultigridParam().
QudaInvertParam* QudaMultigridParam_s::invert_param |
Definition at line 478 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::MG::createSmoother(), dumpMultigridQuda(), quda::MG::generateEigenVectors(), quda::MG::generateNullVectors(), main(), quda::MG::MG(), quda::multigrid_solver::multigrid_solver(), newMultigridQuda(), quda::MG::operator()(), printQudaMultigridParam(), quda::MG::reset(), setMultigridParam(), and updateMultigridQuda().
QudaFieldLocation QudaMultigridParam_s::location[QUDA_MAX_MG_LEVEL] |
Location where each level should be done
Definition at line 598 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::reset(), setMultigridParam(), and quda::MG::verify().
double QudaMultigridParam_s::mu_factor[QUDA_MAX_MG_LEVEL] |
Multiplicative factor for the mu parameter
Definition at line 648 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), setMultigridParam(), and quda::MG::verify().
int QudaMultigridParam_s::n_block_ortho[QUDA_MAX_MG_LEVEL] |
Number of times to repeat Gram-Schmidt in block orthogonalization
Definition at line 498 of file quda.h.
Referenced by setMultigridParam().
int QudaMultigridParam_s::n_level |
Number of multigrid levels
Definition at line 483 of file quda.h.
Referenced by main(), quda::multigrid_solver::multigrid_solver(), printQudaMultigridParam(), and setMultigridParam().
int QudaMultigridParam_s::n_vec[QUDA_MAX_MG_LEVEL] |
Number of null-space vectors to use on each level
Definition at line 492 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::loadVectors(), quda::multigrid_solver::multigrid_solver(), printQudaMultigridParam(), quda::MG::reset(), quda::MG::saveVectors(), setMultigridParam(), and quda::MG::~MG().
int QudaMultigridParam_s::nu_post[QUDA_MAX_MG_LEVEL] |
Number of post-smoother applications on each level
Definition at line 570 of file quda.h.
Referenced by setMultigridParam().
int QudaMultigridParam_s::nu_pre[QUDA_MAX_MG_LEVEL] |
Number of pre-smoother applications on each level
Definition at line 567 of file quda.h.
Referenced by setMultigridParam().
int QudaMultigridParam_s::num_setup_iter[QUDA_MAX_MG_LEVEL] |
Number of setup iterations
Definition at line 507 of file quda.h.
Referenced by quda::MG::generateNullVectors(), quda::MG::MG(), and setMultigridParam().
double QudaMultigridParam_s::omega[QUDA_MAX_MG_LEVEL] |
Over/under relaxation factor for the smoother at each level
Definition at line 573 of file quda.h.
Referenced by quda::MGParam::MGParam(), and setMultigridParam().
QudaBoolean QudaMultigridParam_s::post_orthonormalize |
Post orthonormalize vectors in the setup phase
Definition at line 537 of file quda.h.
Referenced by quda::MG::buildFreeVectors(), quda::MG::generateNullVectors(), and setMultigridParam().
QudaBoolean QudaMultigridParam_s::pre_orthonormalize |
Pre orthonormalize vectors in the setup phase
Definition at line 534 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
QudaPrecision QudaMultigridParam_s::precision_null[QUDA_MAX_MG_LEVEL] |
Precision to store the null-space vectors in (post block orthogonalization)
Definition at line 495 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::multigrid_solver::multigrid_solver(), quda::MG::reset(), setMultigridParam(), and quda::MG::verify().
QudaBoolean QudaMultigridParam_s::run_low_mode_check |
Whether to run null Vs eigen vector overlap checks once set up is complete
Definition at line 621 of file quda.h.
Referenced by setMultigridParam(), and quda::MG::verify().
QudaBoolean QudaMultigridParam_s::run_oblique_proj_check |
Whether to run null vector oblique checks once set up is complete
Definition at line 624 of file quda.h.
Referenced by setMultigridParam(), and quda::MG::verify().
QudaBoolean QudaMultigridParam_s::run_verify |
Whether to run the verification checks once set up is complete
Definition at line 618 of file quda.h.
Referenced by quda::MG::reset(), and setMultigridParam().
double QudaMultigridParam_s::secs |
Definition at line 645 of file quda.h.
Referenced by quda::multigrid_solver::multigrid_solver().
QudaCABasis QudaMultigridParam_s::setup_ca_basis[QUDA_MAX_MG_LEVEL] |
Basis to use for CA-CGN(E/R) setup
Definition at line 519 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
int QudaMultigridParam_s::setup_ca_basis_size[QUDA_MAX_MG_LEVEL] |
Basis size for CACG setup
Definition at line 522 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
double QudaMultigridParam_s::setup_ca_lambda_max[QUDA_MAX_MG_LEVEL] |
Maximum eigenvalue for Chebyshev CA basis
Definition at line 528 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
double QudaMultigridParam_s::setup_ca_lambda_min[QUDA_MAX_MG_LEVEL] |
Minimum eigenvalue for Chebyshev CA basis
Definition at line 525 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
QudaInverterType QudaMultigridParam_s::setup_inv_type[QUDA_MAX_MG_LEVEL] |
Inverter to use in the setup phase
Definition at line 504 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
QudaFieldLocation QudaMultigridParam_s::setup_location[QUDA_MAX_MG_LEVEL] |
Location where the coarse-operator construction will be computedn
Definition at line 601 of file quda.h.
Referenced by quda::multigrid_solver::multigrid_solver(), quda::MG::reset(), and setMultigridParam().
int QudaMultigridParam_s::setup_maxiter[QUDA_MAX_MG_LEVEL] |
Maximum number of iterations for each setup solver
Definition at line 513 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
int QudaMultigridParam_s::setup_maxiter_refresh[QUDA_MAX_MG_LEVEL] |
Maximum number of iterations for refreshing the null-space vectors
Definition at line 516 of file quda.h.
Referenced by quda::MG::generateNullVectors(), quda::MG::reset(), and setMultigridParam().
QudaBoolean QudaMultigridParam_s::setup_minimize_memory |
Minimize device memory allocations during the adaptive setup, placing temporary fields in mapped memory instad of device memory
Definition at line 609 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::multigrid_solver::multigrid_solver(), and setMultigridParam().
double QudaMultigridParam_s::setup_tol[QUDA_MAX_MG_LEVEL] |
Tolerance to use in the setup phase
Definition at line 510 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
QudaSetupType QudaMultigridParam_s::setup_type |
Null-space type to use in the setup phase
Definition at line 531 of file quda.h.
Referenced by quda::MG::generateNullVectors(), and setMultigridParam().
QudaInverterType QudaMultigridParam_s::smoother[QUDA_MAX_MG_LEVEL] |
Smoother to use on each level
Definition at line 561 of file quda.h.
Referenced by setMultigridParam().
QudaPrecision QudaMultigridParam_s::smoother_halo_precision[QUDA_MAX_MG_LEVEL] |
Precision to use for halo communication in the smoother
Definition at line 576 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::multigrid_solver::multigrid_solver(), and setMultigridParam().
int QudaMultigridParam_s::smoother_schwarz_cycle[QUDA_MAX_MG_LEVEL] |
Number of Schwarz cycles to apply
Definition at line 582 of file quda.h.
Referenced by quda::MG::createSmoother(), and setMultigridParam().
QudaSchwarzType QudaMultigridParam_s::smoother_schwarz_type[QUDA_MAX_MG_LEVEL] |
Whether to use additive or multiplicative Schwarz preconditioning in the smoother
Definition at line 579 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), quda::MG::createSmoother(), quda::MG::generateNullVectors(), quda::multigrid_solver::multigrid_solver(), and setMultigridParam().
QudaSolveType QudaMultigridParam_s::smoother_solve_type[QUDA_MAX_MG_LEVEL] |
The type of smoother solve to do on each grid (e/o preconditioning or not)
Definition at line 589 of file quda.h.
Referenced by quda::MG::createCoarseDirac(), main(), quda::multigrid_solver::multigrid_solver(), setMultigridParam(), updateMultigridQuda(), and quda::MG::verify().
double QudaMultigridParam_s::smoother_tol[QUDA_MAX_MG_LEVEL] |
Tolerance to use for the smoother / solver on each level
Definition at line 564 of file quda.h.
Referenced by setMultigridParam().
int QudaMultigridParam_s::spin_block_size[QUDA_MAX_MG_LEVEL] |
Spin block sizes to use on each level
Definition at line 489 of file quda.h.
Referenced by setMultigridParam().
QudaBoolean QudaMultigridParam_s::use_eig_solver[QUDA_MAX_MG_LEVEL] |
Whether to use eigenvectors for the nullspace or, if the coarsest instance deflate
Definition at line 604 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::MG(), quda::MG::reset(), and setMultigridParam().
char QudaMultigridParam_s::vec_infile[QUDA_MAX_MG_LEVEL][256] |
Filename prefix where to load the null-space vectors
Definition at line 630 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::loadVectors(), quda::MG::MG(), and setMultigridParam().
QudaBoolean QudaMultigridParam_s::vec_load[QUDA_MAX_MG_LEVEL] |
Whether to load the null-space vectors to disk (requires QIO)
Definition at line 627 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::MG(), and setMultigridParam().
char QudaMultigridParam_s::vec_outfile[QUDA_MAX_MG_LEVEL][256] |
Filename prefix for where to save the null-space vectors
Definition at line 636 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::generateEigenVectors(), main(), quda::MG::saveVectors(), and setMultigridParam().
QudaBoolean QudaMultigridParam_s::vec_store[QUDA_MAX_MG_LEVEL] |
Whether to store the null-space vectors to disk (requires QIO)
Definition at line 633 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::generateNullVectors(), and setMultigridParam().
QudaVerbosity QudaMultigridParam_s::verbosity[QUDA_MAX_MG_LEVEL] |
Verbosity on each level of the multigrid
Definition at line 501 of file quda.h.
Referenced by quda::MG::createCoarseSolver(), quda::MG::generateNullVectors(), quda::MG::pushLevel(), and setMultigridParam().