QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Attributes | List of all members
QudaEigParam_s Struct Reference

#include <quda.h>

Collaboration diagram for QudaEigParam_s:
Collaboration graph
[legend]

Public Attributes

QudaInvertParaminvert_param
 
QudaEigType eig_type
 
QudaBoolean use_poly_acc
 
int poly_deg
 
double a_min
 
double a_max
 
QudaBoolean use_dagger
 
QudaBoolean use_norm_op
 
QudaBoolean compute_svd
 
QudaBoolean require_convergence
 
QudaEigSpectrumType spectrum
 
int nEv
 
int nKr
 
int nLockedMax
 
int nConv
 
double tol
 
int check_interval
 
int max_restarts
 
QudaBoolean arpack_check
 
char arpack_logfile [512]
 
char QUDA_logfile [512]
 
int nk
 
int np
 
QudaBoolean import_vectors
 
QudaPrecision cuda_prec_ritz
 
QudaMemoryType mem_type_ritz
 
QudaFieldLocation location
 
QudaBoolean run_verify
 
char vec_infile [256]
 
char vec_outfile [256]
 
double gflops
 
double secs
 
QudaExtLibType extlib_type
 

Detailed Description

Definition at line 376 of file quda.h.

Member Data Documentation

◆ a_max

double QudaEigParam_s::a_max

Definition at line 394 of file quda.h.

Referenced by quda::EigenSolver::chebyOp(), quda::EigenSolver::EigenSolver(), and setEigParam().

◆ a_min

double QudaEigParam_s::a_min

Range used in polynomial acceleration

Definition at line 393 of file quda.h.

Referenced by quda::EigenSolver::chebyOp(), quda::EigenSolver::EigenSolver(), and setEigParam().

◆ arpack_check

QudaBoolean QudaEigParam_s::arpack_check

In the test function, cross check the device result against ARPACK

Definition at line 429 of file quda.h.

Referenced by eigensolve_test(), eigensolveQuda(), main(), and setEigParam().

◆ arpack_logfile

char QudaEigParam_s::arpack_logfile[512]

For Arpack cross check, name of the Arpack logfile

Definition at line 431 of file quda.h.

Referenced by setEigParam().

◆ check_interval

int QudaEigParam_s::check_interval

For IRLM/IRAM, check every nth restart

Definition at line 424 of file quda.h.

Referenced by quda::EigenSolver::EigenSolver(), and setEigParam().

◆ compute_svd

QudaBoolean QudaEigParam_s::compute_svd

Performs an MdagM solve, then constructs the left and right SVD.

Definition at line 405 of file quda.h.

Referenced by setEigParam().

◆ cuda_prec_ritz

QudaPrecision QudaEigParam_s::cuda_prec_ritz

◆ eig_type

QudaEigType QudaEigParam_s::eig_type

Type of eigensolver algorithm to employ

Definition at line 384 of file quda.h.

Referenced by quda::EigenSolver::create(), and setEigParam().

◆ extlib_type

QudaExtLibType QudaEigParam_s::extlib_type

Which external library to use in the deflation operations (MAGMA or Eigen)

Definition at line 471 of file quda.h.

Referenced by quda::Deflation::operator()(), quda::Deflation::reduce(), setDeflationParam(), and quda::Deflation::verify().

◆ gflops

double QudaEigParam_s::gflops

The Gflops rate of the eigensolver setup The time taken by the eigensolver setup

Definition at line 465 of file quda.h.

Referenced by quda::deflated_solver::deflated_solver().

◆ import_vectors

QudaBoolean QudaEigParam_s::import_vectors

Whether to load eigenvectors

Definition at line 444 of file quda.h.

Referenced by quda::Deflation::Deflation(), and setDeflationParam().

◆ invert_param

QudaInvertParam* QudaEigParam_s::invert_param

Used to store information pertinent to the operator

Definition at line 381 of file quda.h.

Referenced by quda::deflated_solver::deflated_solver(), eigensolve_test(), eigensolveQuda(), quda::Deflation::increment(), main(), quda::Deflation::operator()(), and setDeflationParam().

◆ location

QudaFieldLocation QudaEigParam_s::location

Location where deflation should be done

Definition at line 453 of file quda.h.

Referenced by quda::deflated_solver::deflated_solver(), and setDeflationParam().

◆ max_restarts

int QudaEigParam_s::max_restarts

For IRLM/IRAM, quit after n restarts

Definition at line 426 of file quda.h.

Referenced by quda::EigenSolver::EigenSolver(), and setEigParam().

◆ mem_type_ritz

QudaMemoryType QudaEigParam_s::mem_type_ritz

The memory type used to keep the Ritz vectors

Definition at line 450 of file quda.h.

Referenced by quda::deflated_solver::deflated_solver(), and setDeflationParam().

◆ nConv

int QudaEigParam_s::nConv

◆ nEv

int QudaEigParam_s::nEv

Size of the eigenvector search space

Definition at line 414 of file quda.h.

Referenced by eigensolve_test(), quda::EigenSolver::EigenSolver(), main(), and setEigParam().

◆ nk

int QudaEigParam_s::nk

Definition at line 440 of file quda.h.

Referenced by quda::DeflationParam::DeflationParam(), and setDeflationParam().

◆ nKr

int QudaEigParam_s::nKr

Total size of Krylov space

Definition at line 416 of file quda.h.

Referenced by quda::EigenSolver::EigenSolver(), and setEigParam().

◆ nLockedMax

int QudaEigParam_s::nLockedMax

Max number of locked eigenpairs (deduced at runtime)

Definition at line 418 of file quda.h.

◆ np

int QudaEigParam_s::np

Definition at line 441 of file quda.h.

Referenced by quda::DeflationParam::DeflationParam(), and setDeflationParam().

◆ poly_deg

int QudaEigParam_s::poly_deg

Degree of the Chebysev polynomial

Definition at line 390 of file quda.h.

Referenced by quda::EigenSolver::chebyOp(), quda::EigenSolver::EigenSolver(), and setEigParam().

◆ QUDA_logfile

char QudaEigParam_s::QUDA_logfile[512]

Name of the QUDA logfile (residua, upper Hessenberg/tridiag matrix updates)

Definition at line 434 of file quda.h.

Referenced by setEigParam().

◆ require_convergence

QudaBoolean QudaEigParam_s::require_convergence

If true, the solver will error out if the convergence criteria are not met

Definition at line 408 of file quda.h.

Referenced by quda::TRLM::operator()(), and setEigParam().

◆ run_verify

QudaBoolean QudaEigParam_s::run_verify

Whether to run the verification checks once set up is complete

Definition at line 456 of file quda.h.

Referenced by quda::Deflation::Deflation(), and setDeflationParam().

◆ secs

double QudaEigParam_s::secs

Definition at line 468 of file quda.h.

Referenced by quda::deflated_solver::deflated_solver().

◆ spectrum

QudaEigSpectrumType QudaEigParam_s::spectrum

Which part of the spectrum to solve

Definition at line 411 of file quda.h.

Referenced by quda::EigenSolver::EigenSolver(), setEigParam(), and quda::TRLM::TRLM().

◆ tol

double QudaEigParam_s::tol

Tolerance on the least well known eigenvalue's residual

Definition at line 422 of file quda.h.

Referenced by quda::EigenSolver::EigenSolver(), and setEigParam().

◆ use_dagger

QudaBoolean QudaEigParam_s::use_dagger

What type of Dirac operator we are using If !(use_norm_op) && !(use_dagger) use M. If use_dagger, use Mdag If use_norm_op, use MdagM If use_norm_op && use_dagger use MMdag.

Definition at line 401 of file quda.h.

Referenced by eigensolveQuda(), quda::MG::generateEigenVectors(), and setEigParam().

◆ use_norm_op

QudaBoolean QudaEigParam_s::use_norm_op

Definition at line 402 of file quda.h.

Referenced by eigensolveQuda(), quda::MG::generateEigenVectors(), and setEigParam().

◆ use_poly_acc

QudaBoolean QudaEigParam_s::use_poly_acc

Use Polynomial Acceleration

Definition at line 387 of file quda.h.

Referenced by quda::EigenSolver::chebyOp(), eigensolveQuda(), quda::EigenSolver::EigenSolver(), and setEigParam().

◆ vec_infile

char QudaEigParam_s::vec_infile[256]

Filename prefix where to load the null-space vectors

Definition at line 459 of file quda.h.

Referenced by quda::MG::createCoarseSolver(), quda::EigenSolver::loadFromFile(), quda::Deflation::loadVectors(), quda::TRLM::operator()(), setDeflationParam(), and setEigParam().

◆ vec_outfile

char QudaEigParam_s::vec_outfile[256]

Filename prefix for where to save the null-space vectors

Definition at line 462 of file quda.h.

Referenced by quda::MG::createCoarseSolver(), quda::TRLM::operator()(), quda::Deflation::saveVectors(), setDeflationParam(), and setEigParam().


The documentation for this struct was generated from the following file: