QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Attributes | List of all members
quda::CGNR Class Reference

#include <invert_quda.h>

Inheritance diagram for quda::CGNR:
Inheritance graph
[legend]
Collaboration diagram for quda::CGNR:
Collaboration graph
[legend]

Public Member Functions

 CGNR (DiracMatrix &mat, DiracMatrix &matSloppy, SolverParam &param, TimeProfile &profile)
 
virtual ~CGNR ()
 
void operator() (ColorSpinorField &out, ColorSpinorField &in)
 Run CG. More...
 
- Public Member Functions inherited from quda::CG
 CG (DiracMatrix &mat, DiracMatrix &matSloppy, SolverParam &param, TimeProfile &profile)
 
virtual ~CG ()
 
void operator() (ColorSpinorField &out, ColorSpinorField &in, ColorSpinorField *p_init, double r2_old_init)
 Solve re-using an initial Krylov space defined by an initial r2_old_init and search direction p_init. More...
 
void blocksolve (ColorSpinorField &out, ColorSpinorField &in)
 
- Public Member Functions inherited from quda::Solver
 Solver (SolverParam &param, TimeProfile &profile)
 
virtual ~Solver ()
 
bool convergence (double r2, double hq2, double r2_tol, double hq_tol)
 
bool convergenceHQ (double r2, double hq2, double r2_tol, double hq_tol)
 Test for HQ solver convergence – ignore L2 residual. More...
 
bool convergenceL2 (double r2, double hq2, double r2_tol, double hq_tol)
 Test for L2 solver convergence – ignore HQ residual. More...
 
void PrintStats (const char *name, int k, double r2, double b2, double hq2)
 Prints out the running statistics of the solver (requires a verbosity of QUDA_VERBOSE) More...
 
void PrintSummary (const char *name, int k, double r2, double b2, double r2_tol, double hq_tol)
 Prints out the summary of the solver convergence (requires a verbosity of QUDA_SUMMARIZE). Assumes SolverParam.true_res and SolverParam.true_res_hq has been set. More...
 
void constructDeflationSpace (const ColorSpinorField &meta, const DiracMatrix &mat, bool svd)
 Constructs the deflation space. More...
 
virtual double flops () const
 

Private Attributes

DiracMdagM mdagm
 
DiracMdagM mdagmSloppy
 
ColorSpinorFieldbp
 
bool init
 

Additional Inherited Members

- Static Public Member Functions inherited from quda::Solver
static Solvercreate (SolverParam &param, DiracMatrix &mat, DiracMatrix &matSloppy, DiracMatrix &matPrecon, TimeProfile &profile)
 
static double stopping (double tol, double b2, QudaResidualType residual_type)
 Set the solver L2 stopping condition. More...
 
- Public Attributes inherited from quda::Solver
EigenSolvereig_solve
 
bool deflate_init = false
 
std::vector< ColorSpinorField * > defl_tmp1
 
std::vector< ColorSpinorField * > defl_tmp2
 
- Protected Attributes inherited from quda::Solver
SolverParamparam
 
TimeProfileprofile
 
int node_parity
 

Detailed Description

Definition at line 658 of file invert_quda.h.

Constructor & Destructor Documentation

◆ CGNR()

quda::CGNR::CGNR ( DiracMatrix mat,
DiracMatrix matSloppy,
SolverParam param,
TimeProfile profile 
)

Definition at line 142 of file inv_cg_quda.cpp.

◆ ~CGNR()

quda::CGNR::~CGNR ( )
virtual

Definition at line 147 of file inv_cg_quda.cpp.

References bp, and init.

Member Function Documentation

◆ operator()()

void quda::CGNR::operator() ( ColorSpinorField out,
ColorSpinorField in 
)
virtual

Member Data Documentation

◆ bp

ColorSpinorField* quda::CGNR::bp
private

Definition at line 663 of file invert_quda.h.

Referenced by operator()(), and ~CGNR().

◆ init

bool quda::CGNR::init
private

Definition at line 664 of file invert_quda.h.

Referenced by quda::CG::blocksolve(), quda::CG::operator()(), operator()(), and ~CGNR().

◆ mdagm

DiracMdagM quda::CGNR::mdagm
private

Definition at line 661 of file invert_quda.h.

Referenced by operator()().

◆ mdagmSloppy

DiracMdagM quda::CGNR::mdagmSloppy
private

Definition at line 662 of file invert_quda.h.


The documentation for this class was generated from the following files: