QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Namespaces | Macros | Functions | Variables
multigrid_invert_test.cpp File Reference
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <math.h>
#include <string.h>
#include <limits>
#include <util_quda.h>
#include <test_util.h>
#include <dslash_util.h>
#include <blas_reference.h>
#include <wilson_dslash_reference.h>
#include <domain_wall_dslash_reference.h>
#include "misc.h"
#include <qio_field.h>
#include <color_spinor_field.h>
#include <quda.h>
Include dependency graph for multigrid_invert_test.cpp:

Go to the source code of this file.

Namespaces

 quda
 

Macros

#define MAX(a, b)   ((a)>(b)?(a):(b))
 

Functions

void usage (char **)
 
void quda::setTransferGPU (bool)
 
void display_test_info ()
 
void setGaugeParam (QudaGaugeParam &gauge_param)
 
void setEigParam (QudaEigParam &mg_eig_param, int level)
 
void setMultigridParam (QudaMultigridParam &mg_param)
 
void setInvertParam (QudaInvertParam &inv_param)
 
int main (int argc, char **argv)
 

Variables

QudaDslashType dslash_type
 
int device
 
int xdim
 
int ydim
 
int zdim
 
int tdim
 
int Lsdim
 
int gridsize_from_cmdline []
 
QudaReconstructType link_recon
 
QudaPrecision prec
 
QudaPrecision prec_sloppy
 
QudaPrecision prec_precondition
 
QudaPrecision prec_null
 
QudaReconstructType link_recon_sloppy
 
QudaReconstructType link_recon_precondition
 
double mass
 
double kappa
 
double mu
 
double epsilon
 
double anisotropy
 
double tol
 
double tol_hq
 
double reliable_delta
 
char latfile []
 
bool unit_gauge
 
int Nsrc
 
int niter
 
int gcrNkrylov
 
int pipeline
 
int nvec []
 
int mg_levels
 
bool generate_nullspace
 
bool generate_all_levels
 
int nu_pre [QUDA_MAX_MG_LEVEL]
 
int nu_post [QUDA_MAX_MG_LEVEL]
 
int n_block_ortho [QUDA_MAX_MG_LEVEL]
 
QudaSolveType coarse_solve_type [QUDA_MAX_MG_LEVEL]
 
QudaSolveType smoother_solve_type [QUDA_MAX_MG_LEVEL]
 
int geo_block_size [QUDA_MAX_MG_LEVEL][QUDA_MAX_DIM]
 
double mu_factor [QUDA_MAX_MG_LEVEL]
 
QudaVerbosity mg_verbosity [QUDA_MAX_MG_LEVEL]
 
QudaFieldLocation solver_location [QUDA_MAX_MG_LEVEL]
 
QudaFieldLocation setup_location [QUDA_MAX_MG_LEVEL]
 
QudaInverterType setup_inv [QUDA_MAX_MG_LEVEL]
 
int num_setup_iter [QUDA_MAX_MG_LEVEL]
 
double setup_tol [QUDA_MAX_MG_LEVEL]
 
int setup_maxiter [QUDA_MAX_MG_LEVEL]
 
QudaCABasis setup_ca_basis [QUDA_MAX_MG_LEVEL]
 
int setup_ca_basis_size [QUDA_MAX_MG_LEVEL]
 
double setup_ca_lambda_min [QUDA_MAX_MG_LEVEL]
 
double setup_ca_lambda_max [QUDA_MAX_MG_LEVEL]
 
QudaSetupType setup_type
 
bool pre_orthonormalize
 
bool post_orthonormalize
 
double omega
 
QudaInverterType coarse_solver [QUDA_MAX_MG_LEVEL]
 
QudaInverterType smoother_type [QUDA_MAX_MG_LEVEL]
 
double coarse_solver_tol [QUDA_MAX_MG_LEVEL]
 
QudaCABasis coarse_solver_ca_basis [QUDA_MAX_MG_LEVEL]
 
int coarse_solver_ca_basis_size [QUDA_MAX_MG_LEVEL]
 
double coarse_solver_ca_lambda_min [QUDA_MAX_MG_LEVEL]
 
double coarse_solver_ca_lambda_max [QUDA_MAX_MG_LEVEL]
 
double smoother_tol [QUDA_MAX_MG_LEVEL]
 
int coarse_solver_maxiter [QUDA_MAX_MG_LEVEL]
 
QudaPrecision smoother_halo_prec
 
QudaSchwarzType schwarz_type [QUDA_MAX_MG_LEVEL]
 
int schwarz_cycle [QUDA_MAX_MG_LEVEL]
 
QudaMatPCType matpc_type
 
QudaSolveType solve_type
 
char mg_vec_infile [QUDA_MAX_MG_LEVEL][256]
 
char mg_vec_outfile [QUDA_MAX_MG_LEVEL][256]
 
QudaTwistFlavorType twist_flavor
 
double clover_coeff
 
bool compute_clover
 
bool verify_results
 
bool low_mode_check
 
bool oblique_proj_check
 
bool mg_eig [QUDA_MAX_MG_LEVEL]
 
int mg_eig_nEv [QUDA_MAX_MG_LEVEL]
 
int mg_eig_nKr [QUDA_MAX_MG_LEVEL]
 
bool mg_eig_require_convergence [QUDA_MAX_MG_LEVEL]
 
int mg_eig_check_interval [QUDA_MAX_MG_LEVEL]
 
int mg_eig_max_restarts [QUDA_MAX_MG_LEVEL]
 
double mg_eig_tol [QUDA_MAX_MG_LEVEL]
 
bool mg_eig_use_poly_acc [QUDA_MAX_MG_LEVEL]
 
int mg_eig_poly_deg [QUDA_MAX_MG_LEVEL]
 
double mg_eig_amin [QUDA_MAX_MG_LEVEL]
 
double mg_eig_amax [QUDA_MAX_MG_LEVEL]
 
bool mg_eig_use_normop [QUDA_MAX_MG_LEVEL]
 
bool mg_eig_use_dagger [QUDA_MAX_MG_LEVEL]
 
QudaEigSpectrumType mg_eig_spectrum [QUDA_MAX_MG_LEVEL]
 
QudaEigType mg_eig_type [QUDA_MAX_MG_LEVEL]
 
bool mg_eig_coarse_guess
 
char eig_QUDA_logfile []
 
QudaPrecisioncpu_prec = prec
 
QudaPrecisioncuda_prec = prec
 
QudaPrecisioncuda_prec_sloppy = prec_sloppy
 
QudaPrecisioncuda_prec_precondition = prec_precondition
 

Macro Definition Documentation

◆ MAX

#define MAX (   a,
 
)    ((a)>(b)?(a):(b))

Definition at line 19 of file multigrid_invert_test.cpp.

Referenced by setGaugeParam().

Function Documentation

◆ display_test_info()

void display_test_info ( )

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 608 of file multigrid_invert_test.cpp.

References quda::ax(), QudaInvertParam_s::clover_cpu_prec, clover_mat(), clover_matpc(), cloverSiteSize, coarse_solve_type, coarse_solver, coarse_solver_ca_basis, coarse_solver_ca_basis_size, coarse_solver_ca_lambda_max, coarse_solver_ca_lambda_min, coarse_solver_maxiter, coarse_solver_tol, compute_clover, QudaInvertParam_s::compute_clover, QudaInvertParam_s::compute_clover_inverse, construct_clover_field(), construct_gauge_field(), construct_spinor_source(), QudaGaugeParam_s::cpu_prec, cpu_prec, QudaInvertParam_s::cpu_prec, destroyMultigridQuda(), device, display_test_info(), dslash_type, QudaMultigridParam_s::eig_param, endQuda(), QudaInvertParam_s::epsilon, errorQuda, finalizeComms(), freeCloverQuda(), freeGaugeQuda(), gauge_param, gaugeSiteSize, QudaInvertParam_s::gflops, gridsize_from_cmdline, gSize, initComms(), initQuda(), initRand(), inv_param, QudaMultigridParam_s::invert_param, invertQuda(), QudaInvertParam_s::iter, QudaInvertParam_s::kappa, latfile, link_recon, link_recon_precondition, link_recon_sloppy, loadCloverQuda(), loadGaugeQuda(), QudaInvertParam_s::Ls, QudaInvertParam_s::mass_normalization, QudaInvertParam_s::matpc_type, mg_eig, mg_eig_amax, mg_eig_amin, mg_eig_check_interval, mg_eig_max_restarts, mg_eig_poly_deg, mg_eig_require_convergence, mg_eig_spectrum, mg_eig_tol, mg_eig_type, mg_eig_use_dagger, mg_eig_use_normop, mg_eig_use_poly_acc, mg_levels, mg_vec_infile, mg_vec_outfile, mg_verbosity, QudaInvertParam_s::mu, mu_factor, quda::blas::mxpy(), n_block_ortho, newMultigridQuda(), newQudaEigParam(), newQudaGaugeParam(), newQudaInvertParam(), newQudaMultigridParam(), quda::norm(), norm_2(), Nsrc, nu_post, nu_pre, num_setup_iter, plaqQuda(), prec, prec_null, prec_precondition, prec_sloppy, QudaInvertParam_s::preconditioner, printfQuda, process_command_line_option(), QUDA_BICGSTAB_INVERTER, QUDA_BOOLEAN_FALSE, QUDA_BOOLEAN_TRUE, QUDA_CLOVER_WILSON_DSLASH, QUDA_CUDA_FIELD_LOCATION, QUDA_DIRECT_PC_SOLVE, QUDA_DOUBLE_PRECISION, QUDA_EIG_TR_LANCZOS, QUDA_GCR_INVERTER, QUDA_INVALID_PRECISION, QUDA_INVALID_SCHWARZ, QUDA_INVALID_SOLVE, QUDA_MASS_NORMALIZATION, QUDA_MAT_SOLUTION, QUDA_MATPC_SOLUTION, QUDA_MAX_MG_LEVEL, QUDA_MR_INVERTER, QUDA_POWER_BASIS, QUDA_RECONSTRUCT_INVALID, QUDA_SPECTRUM_SR_EIG, QUDA_SUMMARIZE, QUDA_TWIST_NONDEG_DOUBLET, QUDA_TWIST_SINGLET, QUDA_TWISTED_CLOVER_DSLASH, QUDA_TWISTED_MASS_DSLASH, QUDA_WILSON_DSLASH, read_gauge_field(), reliable_delta, QudaInvertParam_s::return_clover, QudaInvertParam_s::return_clover_inverse, schwarz_cycle, schwarz_type, QudaInvertParam_s::secs, setDims(), setEigParam(), setGaugeParam(), setInvertParam(), setMultigridParam(), setSpinorSiteSize(), setup_ca_basis, setup_ca_basis_size, setup_ca_lambda_max, setup_ca_lambda_min, setup_inv, setup_location, setup_maxiter, setup_tol, smoother_halo_prec, smoother_solve_type, QudaMultigridParam_s::smoother_solve_type, smoother_tol, smoother_type, QudaInvertParam_s::solution_type, solve_type, QudaInvertParam_s::solve_type, solver_location, spinorOut, spinorSiteSize, quda::sqrt(), tm_mat(), tm_matpc(), tm_ndeg_mat(), tm_ndeg_matpc(), tmc_mat(), tmc_matpc(), QudaInvertParam_s::tol, QudaInvertParam_s::tol_hq, QudaInvertParam_s::true_res, QudaInvertParam_s::true_res_hq, twist_flavor, QudaInvertParam_s::twist_flavor, unit_gauge, usage(), V, Vh, wil_mat(), wil_matpc(), and QudaGaugeParam_s::X.

Here is the call graph for this function:

◆ setEigParam()

void setEigParam ( QudaEigParam mg_eig_param,
int  level 
)

◆ setGaugeParam()

void setGaugeParam ( QudaGaugeParam gauge_param)

◆ setInvertParam()

void setInvertParam ( QudaInvertParam inv_param)

Definition at line 516 of file multigrid_invert_test.cpp.

References anisotropy, QudaInvertParam_s::cl_pad, clover_coeff, QudaInvertParam_s::clover_coeff, QudaInvertParam_s::clover_cpu_prec, QudaInvertParam_s::clover_cuda_prec, QudaInvertParam_s::clover_cuda_prec_precondition, QudaInvertParam_s::clover_cuda_prec_refinement_sloppy, QudaInvertParam_s::clover_cuda_prec_sloppy, QudaInvertParam_s::clover_order, cpu_prec, QudaInvertParam_s::cpu_prec, cuda_prec, QudaInvertParam_s::cuda_prec, cuda_prec_precondition, QudaInvertParam_s::cuda_prec_precondition, cuda_prec_sloppy, QudaInvertParam_s::cuda_prec_sloppy, QudaInvertParam_s::dagger, QudaInvertParam_s::dirac_order, dslash_type, QudaInvertParam_s::dslash_type, epsilon, QudaInvertParam_s::epsilon, QudaInvertParam_s::gamma_basis, gcrNkrylov, QudaInvertParam_s::gcrNkrylov, QudaInvertParam_s::input_location, QudaInvertParam_s::inv_type, QudaInvertParam_s::inv_type_precondition, kappa, QudaInvertParam_s::kappa, QudaInvertParam_s::Ls, mass, QudaInvertParam_s::mass, QudaInvertParam_s::mass_normalization, matpc_type, QudaInvertParam_s::matpc_type, QudaInvertParam_s::maxiter, QudaInvertParam_s::maxiter_precondition, mg_verbosity, mu, QudaInvertParam_s::mu, niter, QudaInvertParam_s::num_offset, QudaInvertParam_s::omega, QudaInvertParam_s::output_location, pipeline, QudaInvertParam_s::pipeline, QudaInvertParam_s::precondition_cycle, QudaInvertParam_s::preserve_source, printfQuda, QUDA_ADDITIVE_SCHWARZ, QUDA_CLOVER_WILSON_DSLASH, QUDA_CPU_FIELD_LOCATION, QUDA_DAG_NO, QUDA_DEGRAND_ROSSI_GAMMA_BASIS, QUDA_DIRAC_ORDER, QUDA_GCR_INVERTER, QUDA_KAPPA_NORMALIZATION, QUDA_L2_RELATIVE_RESIDUAL, QUDA_MAT_SOLUTION, QUDA_MG_INVERTER, QUDA_PACKED_CLOVER_ORDER, QUDA_PRESERVE_SOURCE_NO, QUDA_TWIST_NONDEG_DOUBLET, QUDA_TWISTED_CLOVER_DSLASH, QUDA_TWISTED_MASS_DSLASH, QUDA_VERBOSE, reliable_delta, QudaInvertParam_s::reliable_delta, QudaInvertParam_s::residual_type, QudaInvertParam_s::schwarz_type, QudaInvertParam_s::solution_type, solve_type, QudaInvertParam_s::solve_type, QudaInvertParam_s::sp_pad, tol, QudaInvertParam_s::tol, tol_hq, QudaInvertParam_s::tol_hq, QudaInvertParam_s::tol_hq_offset, QudaInvertParam_s::tol_offset, QudaInvertParam_s::tol_precondition, twist_flavor, QudaInvertParam_s::twist_flavor, QudaInvertParam_s::verbosity, and QudaInvertParam_s::verbosity_precondition.

Referenced by main().

Here is the caller graph for this function:

◆ setMultigridParam()

void setMultigridParam ( QudaMultigridParam mg_param)

Definition at line 273 of file multigrid_invert_test.cpp.

References anisotropy, QudaInvertParam_s::cl_pad, clover_coeff, QudaInvertParam_s::clover_coeff, QudaInvertParam_s::clover_cpu_prec, QudaInvertParam_s::clover_cuda_prec, QudaInvertParam_s::clover_cuda_prec_precondition, QudaInvertParam_s::clover_cuda_prec_refinement_sloppy, QudaInvertParam_s::clover_cuda_prec_sloppy, QudaInvertParam_s::clover_order, QudaMultigridParam_s::coarse_grid_solution_type, QudaMultigridParam_s::coarse_guess, coarse_solve_type, coarse_solver, QudaMultigridParam_s::coarse_solver, coarse_solver_ca_basis, QudaMultigridParam_s::coarse_solver_ca_basis, coarse_solver_ca_basis_size, QudaMultigridParam_s::coarse_solver_ca_basis_size, coarse_solver_ca_lambda_max, QudaMultigridParam_s::coarse_solver_ca_lambda_max, coarse_solver_ca_lambda_min, QudaMultigridParam_s::coarse_solver_ca_lambda_min, coarse_solver_maxiter, QudaMultigridParam_s::coarse_solver_maxiter, coarse_solver_tol, QudaMultigridParam_s::coarse_solver_tol, QudaMultigridParam_s::compute_null_vector, cpu_prec, QudaInvertParam_s::cpu_prec, cuda_prec, QudaInvertParam_s::cuda_prec, cuda_prec_precondition, QudaInvertParam_s::cuda_prec_precondition, cuda_prec_sloppy, QudaInvertParam_s::cuda_prec_sloppy, QudaMultigridParam_s::cycle_type, QudaInvertParam_s::dagger, QudaInvertParam_s::dirac_order, dslash_type, QudaInvertParam_s::dslash_type, epsilon, QudaInvertParam_s::epsilon, errorQuda, QudaInvertParam_s::gamma_basis, QudaInvertParam_s::gcrNkrylov, generate_all_levels, QudaMultigridParam_s::generate_all_levels, generate_nullspace, geo_block_size, QudaMultigridParam_s::geo_block_size, QudaMultigridParam_s::global_reduction, QudaInvertParam_s::input_location, inv_param, QudaInvertParam_s::inv_type, QudaMultigridParam_s::invert_param, kappa, QudaInvertParam_s::kappa, QudaMultigridParam_s::location, low_mode_check, QudaInvertParam_s::Ls, mass, QudaInvertParam_s::mass, QudaInvertParam_s::mass_normalization, matpc_type, QudaInvertParam_s::matpc_type, QudaInvertParam_s::maxiter, mg_eig, mg_eig_coarse_guess, mg_levels, mg_vec_infile, mg_vec_outfile, mg_verbosity, mu, QudaInvertParam_s::mu, mu_factor, QudaMultigridParam_s::mu_factor, n_block_ortho, QudaMultigridParam_s::n_block_ortho, QudaMultigridParam_s::n_level, QudaMultigridParam_s::n_vec, nu_post, QudaMultigridParam_s::nu_post, nu_pre, QudaMultigridParam_s::nu_pre, num_setup_iter, QudaMultigridParam_s::num_setup_iter, nvec, oblique_proj_check, omega, QudaMultigridParam_s::omega, QudaInvertParam_s::output_location, post_orthonormalize, QudaMultigridParam_s::post_orthonormalize, pre_orthonormalize, QudaMultigridParam_s::pre_orthonormalize, prec_null, QudaMultigridParam_s::precision_null, QudaInvertParam_s::preserve_source, printfQuda, QUDA_BOOLEAN_FALSE, QUDA_BOOLEAN_TRUE, QUDA_CLOVER_WILSON_DSLASH, QUDA_COMPUTE_NULL_VECTOR_NO, QUDA_COMPUTE_NULL_VECTOR_YES, QUDA_CPU_FIELD_LOCATION, QUDA_DAG_NO, QUDA_DEGRAND_ROSSI_GAMMA_BASIS, QUDA_DIRAC_ORDER, QUDA_DIRECT_PC_SOLVE, QUDA_DIRECT_SOLVE, QUDA_GCR_INVERTER, QUDA_INVALID_SCHWARZ, QUDA_KAPPA_NORMALIZATION, QUDA_MAT_SOLUTION, QUDA_MATPC_SOLUTION, QUDA_MAX_DIM, QUDA_MG_CYCLE_RECURSIVE, QUDA_PACKED_CLOVER_ORDER, QUDA_PRESERVE_SOURCE_NO, QUDA_SUMMARIZE, QUDA_TWIST_NONDEG_DOUBLET, QUDA_TWISTED_CLOVER_DSLASH, QUDA_TWISTED_MASS_DSLASH, QudaInvertParam_s::reliable_delta, QudaMultigridParam_s::run_low_mode_check, QudaMultigridParam_s::run_oblique_proj_check, QudaMultigridParam_s::run_verify, schwarz_cycle, schwarz_type, setup_ca_basis, QudaMultigridParam_s::setup_ca_basis, setup_ca_basis_size, QudaMultigridParam_s::setup_ca_basis_size, setup_ca_lambda_max, QudaMultigridParam_s::setup_ca_lambda_max, setup_ca_lambda_min, QudaMultigridParam_s::setup_ca_lambda_min, setup_inv, QudaMultigridParam_s::setup_inv_type, setup_location, QudaMultigridParam_s::setup_location, setup_maxiter, QudaMultigridParam_s::setup_maxiter, QudaMultigridParam_s::setup_minimize_memory, setup_tol, QudaMultigridParam_s::setup_tol, setup_type, QudaMultigridParam_s::setup_type, QudaMultigridParam_s::smoother, smoother_halo_prec, QudaMultigridParam_s::smoother_halo_precision, QudaMultigridParam_s::smoother_schwarz_cycle, QudaMultigridParam_s::smoother_schwarz_type, smoother_solve_type, QudaMultigridParam_s::smoother_solve_type, smoother_tol, QudaMultigridParam_s::smoother_tol, smoother_type, QudaInvertParam_s::solution_type, solve_type, QudaInvertParam_s::solve_type, solver_location, QudaInvertParam_s::sp_pad, QudaMultigridParam_s::spin_block_size, QudaInvertParam_s::tol, twist_flavor, QudaInvertParam_s::twist_flavor, QudaMultigridParam_s::use_eig_solver, QudaMultigridParam_s::vec_infile, QudaMultigridParam_s::vec_load, QudaMultigridParam_s::vec_outfile, QudaMultigridParam_s::vec_store, QudaInvertParam_s::verbosity, QudaMultigridParam_s::verbosity, QudaInvertParam_s::verbosity_precondition, and verify_results.

Referenced by main().

Here is the caller graph for this function:

◆ usage()

void usage ( char **  )

Definition at line 1783 of file test_util.cpp.

Referenced by main().

Here is the caller graph for this function:

Variable Documentation

◆ anisotropy

double anisotropy

Definition at line 1650 of file test_util.cpp.

Referenced by setGaugeParam(), setInvertParam(), and setMultigridParam().

◆ clover_coeff

double clover_coeff

Definition at line 1653 of file test_util.cpp.

Referenced by process_command_line_option(), setInvertParam(), and setMultigridParam().

◆ coarse_solve_type

QudaSolveType coarse_solve_type[QUDA_MAX_MG_LEVEL]

Definition at line 1677 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver

Definition at line 1691 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_ca_basis

QudaCABasis coarse_solver_ca_basis[QUDA_MAX_MG_LEVEL]

Definition at line 1697 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_ca_basis_size

int coarse_solver_ca_basis_size[QUDA_MAX_MG_LEVEL]

Definition at line 1698 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_ca_lambda_max

double coarse_solver_ca_lambda_max[QUDA_MAX_MG_LEVEL]

Definition at line 1700 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_ca_lambda_min

double coarse_solver_ca_lambda_min[QUDA_MAX_MG_LEVEL]

Definition at line 1699 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_maxiter

int coarse_solver_maxiter[QUDA_MAX_MG_LEVEL]

Definition at line 1696 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ coarse_solver_tol

double coarse_solver_tol[QUDA_MAX_MG_LEVEL]

Definition at line 1692 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ compute_clover

bool compute_clover

Definition at line 1654 of file test_util.cpp.

Referenced by main(), and process_command_line_option().

◆ cpu_prec

QudaPrecision& cpu_prec = prec

Definition at line 192 of file multigrid_invert_test.cpp.

Referenced by main(), setGaugeParam(), setInvertParam(), and setMultigridParam().

◆ cuda_prec

QudaPrecision& cuda_prec = prec

◆ cuda_prec_precondition

QudaPrecision& cuda_prec_precondition = prec_precondition

Definition at line 195 of file multigrid_invert_test.cpp.

Referenced by setGaugeParam(), setInvertParam(), and setMultigridParam().

◆ cuda_prec_sloppy

QudaPrecision& cuda_prec_sloppy = prec_sloppy

Definition at line 194 of file multigrid_invert_test.cpp.

Referenced by setGaugeParam(), setInvertParam(), and setMultigridParam().

◆ device

int device

Definition at line 1602 of file test_util.cpp.

Referenced by main().

◆ dslash_type

QudaDslashType dslash_type

Definition at line 1621 of file test_util.cpp.

Referenced by main(), setInvertParam(), and setMultigridParam().

◆ eig_QUDA_logfile

char eig_QUDA_logfile[]

Definition at line 1741 of file test_util.cpp.

Referenced by setEigParam().

◆ epsilon

double epsilon

Definition at line 1649 of file test_util.cpp.

Referenced by setInvertParam(), and setMultigridParam().

◆ gcrNkrylov

int gcrNkrylov

Definition at line 1630 of file test_util.cpp.

Referenced by setInvertParam().

◆ generate_all_levels

bool generate_all_levels

Definition at line 1702 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ generate_nullspace

bool generate_nullspace

Definition at line 1701 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ geo_block_size

int geo_block_size[QUDA_MAX_MG_LEVEL][QUDA_MAX_DIM]

Definition at line 1706 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ gridsize_from_cmdline

int gridsize_from_cmdline[]

For MPI, the default node mapping is lexicographical with t varying fastest.

Definition at line 49 of file test_util.cpp.

Referenced by main().

◆ kappa

double kappa

Definition at line 1647 of file test_util.cpp.

Referenced by setInvertParam(), and setMultigridParam().

◆ latfile

char latfile[]

Definition at line 1623 of file test_util.cpp.

Referenced by main().

◆ link_recon

QudaReconstructType link_recon

Definition at line 1605 of file test_util.cpp.

Referenced by display_test_info(), main(), and setGaugeParam().

◆ link_recon_precondition

QudaReconstructType link_recon_precondition

Definition at line 1607 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setGaugeParam().

◆ link_recon_sloppy

QudaReconstructType link_recon_sloppy

Definition at line 1606 of file test_util.cpp.

Referenced by display_test_info(), main(), and setGaugeParam().

◆ low_mode_check

bool low_mode_check

◆ Lsdim

int Lsdim

Definition at line 1619 of file test_util.cpp.

Referenced by display_test_info(), and process_command_line_option().

◆ mass

double mass

Definition at line 1646 of file test_util.cpp.

Referenced by setInvertParam(), and setMultigridParam().

◆ matpc_type

QudaMatPCType matpc_type

Definition at line 1662 of file test_util.cpp.

Referenced by setInvertParam(), and setMultigridParam().

◆ mg_eig

bool mg_eig[QUDA_MAX_MG_LEVEL]

◆ mg_eig_amax

double mg_eig_amax[QUDA_MAX_MG_LEVEL]

Definition at line 1758 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_amin

double mg_eig_amin[QUDA_MAX_MG_LEVEL]

Definition at line 1757 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_check_interval

int mg_eig_check_interval[QUDA_MAX_MG_LEVEL]

Definition at line 1752 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setEigParam().

◆ mg_eig_coarse_guess

bool mg_eig_coarse_guess

Definition at line 1763 of file test_util.cpp.

Referenced by setMultigridParam().

◆ mg_eig_max_restarts

int mg_eig_max_restarts[QUDA_MAX_MG_LEVEL]

Definition at line 1753 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setEigParam().

◆ mg_eig_nEv

int mg_eig_nEv[QUDA_MAX_MG_LEVEL]

Definition at line 1749 of file test_util.cpp.

Referenced by display_test_info(), process_command_line_option(), and setEigParam().

◆ mg_eig_nKr

int mg_eig_nKr[QUDA_MAX_MG_LEVEL]

Definition at line 1750 of file test_util.cpp.

Referenced by display_test_info(), process_command_line_option(), and setEigParam().

◆ mg_eig_poly_deg

int mg_eig_poly_deg[QUDA_MAX_MG_LEVEL]

Definition at line 1756 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_require_convergence

bool mg_eig_require_convergence[QUDA_MAX_MG_LEVEL]

Definition at line 1751 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_spectrum

Definition at line 1761 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_tol

double mg_eig_tol[QUDA_MAX_MG_LEVEL]

Definition at line 1754 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_type

Definition at line 1762 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_use_dagger

bool mg_eig_use_dagger[QUDA_MAX_MG_LEVEL]

Definition at line 1760 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_use_normop

bool mg_eig_use_normop[QUDA_MAX_MG_LEVEL]

Definition at line 1759 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_eig_use_poly_acc

bool mg_eig_use_poly_acc[QUDA_MAX_MG_LEVEL]

Definition at line 1755 of file test_util.cpp.

Referenced by display_test_info(), main(), process_command_line_option(), and setEigParam().

◆ mg_levels

int mg_levels

◆ mg_vec_infile

char mg_vec_infile[QUDA_MAX_MG_LEVEL][256]

Definition at line 1638 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ mg_vec_outfile

char mg_vec_outfile[QUDA_MAX_MG_LEVEL][256]

Definition at line 1639 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ mg_verbosity

◆ mu

double mu

Definition at line 1648 of file test_util.cpp.

Referenced by process_command_line_option(), setInvertParam(), and setMultigridParam().

◆ mu_factor

double mu_factor[QUDA_MAX_MG_LEVEL]

Definition at line 1674 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ n_block_ortho

int n_block_ortho[QUDA_MAX_MG_LEVEL]

Definition at line 1673 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ niter

int niter

Definition at line 1629 of file test_util.cpp.

Referenced by setInvertParam().

◆ Nsrc

int Nsrc

Definition at line 1627 of file test_util.cpp.

Referenced by main().

◆ nu_post

int nu_post[QUDA_MAX_MG_LEVEL]

◆ nu_pre

int nu_pre[QUDA_MAX_MG_LEVEL]

◆ num_setup_iter

int num_setup_iter[QUDA_MAX_MG_LEVEL]

Definition at line 1679 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ nvec

int nvec[]

◆ oblique_proj_check

bool oblique_proj_check

Definition at line 1645 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ omega

double omega

Definition at line 1690 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ pipeline

int pipeline

Definition at line 1634 of file test_util.cpp.

Referenced by display_test_info(), and setInvertParam().

◆ post_orthonormalize

bool post_orthonormalize

Definition at line 1689 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ pre_orthonormalize

bool pre_orthonormalize

Definition at line 1688 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ prec

Definition at line 1608 of file test_util.cpp.

Referenced by display_test_info(), and main().

◆ prec_null

QudaPrecision prec_null

Definition at line 1612 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ prec_precondition

QudaPrecision prec_precondition

Definition at line 1611 of file test_util.cpp.

Referenced by main(), and process_command_line_option().

◆ prec_sloppy

QudaPrecision prec_sloppy

Definition at line 1609 of file test_util.cpp.

Referenced by display_test_info(), and main().

◆ reliable_delta

double reliable_delta

Definition at line 1658 of file test_util.cpp.

Referenced by main(), and setInvertParam().

◆ schwarz_cycle

int schwarz_cycle[QUDA_MAX_MG_LEVEL]

Definition at line 1704 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ schwarz_type

Definition at line 1703 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_ca_basis

QudaCABasis setup_ca_basis[QUDA_MAX_MG_LEVEL]

Definition at line 1683 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_ca_basis_size

int setup_ca_basis_size[QUDA_MAX_MG_LEVEL]

Definition at line 1684 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_ca_lambda_max

double setup_ca_lambda_max[QUDA_MAX_MG_LEVEL]

Definition at line 1686 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_ca_lambda_min

double setup_ca_lambda_min[QUDA_MAX_MG_LEVEL]

Definition at line 1685 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_inv

Definition at line 1676 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_location

Definition at line 1669 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_maxiter

int setup_maxiter[QUDA_MAX_MG_LEVEL]

Definition at line 1681 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_tol

double setup_tol[QUDA_MAX_MG_LEVEL]

Definition at line 1680 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ setup_type

QudaSetupType setup_type

Definition at line 1687 of file test_util.cpp.

Referenced by process_command_line_option(), and setMultigridParam().

◆ smoother_halo_prec

QudaPrecision smoother_halo_prec

Definition at line 1694 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ smoother_solve_type

QudaSolveType smoother_solve_type[QUDA_MAX_MG_LEVEL]

Definition at line 1678 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ smoother_tol

double smoother_tol[QUDA_MAX_MG_LEVEL]

Definition at line 1695 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ smoother_type

Definition at line 1693 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ solve_type

QudaSolveType solve_type

Definition at line 1663 of file test_util.cpp.

Referenced by main(), setInvertParam(), and setMultigridParam().

◆ solver_location

Definition at line 1668 of file test_util.cpp.

Referenced by main(), process_command_line_option(), and setMultigridParam().

◆ tdim

int tdim

Definition at line 1618 of file test_util.cpp.

Referenced by display_test_info(), and setGaugeParam().

◆ tol

double tol

Definition at line 1656 of file test_util.cpp.

Referenced by setInvertParam().

◆ tol_hq

double tol_hq

Definition at line 1657 of file test_util.cpp.

Referenced by setInvertParam().

◆ twist_flavor

QudaTwistFlavorType twist_flavor

◆ unit_gauge

bool unit_gauge

Definition at line 1624 of file test_util.cpp.

Referenced by main().

◆ verify_results

bool verify_results

Definition at line 1643 of file test_util.cpp.

Referenced by setMultigridParam().

◆ xdim

int xdim

Definition at line 1615 of file test_util.cpp.

Referenced by display_test_info(), and setGaugeParam().

◆ ydim

int ydim

Definition at line 1616 of file test_util.cpp.

Referenced by display_test_info(), and setGaugeParam().

◆ zdim

int zdim

Definition at line 1617 of file test_util.cpp.

Referenced by display_test_info(), and setGaugeParam().