QUDA
1.0.0
|
#include <dirac_quda.h>
Public Member Functions | |
DiracStaggered (const DiracParam ¶m) | |
DiracStaggered (const DiracStaggered &dirac) | |
virtual | ~DiracStaggered () |
DiracStaggered & | operator= (const DiracStaggered &dirac) |
virtual void | checkParitySpinor (const ColorSpinorField &, const ColorSpinorField &) const |
virtual void | Dslash (ColorSpinorField &out, const ColorSpinorField &in, const QudaParity parity) const |
virtual void | DslashXpay (ColorSpinorField &out, const ColorSpinorField &in, const QudaParity parity, const ColorSpinorField &x, const double &k) const |
virtual void | M (ColorSpinorField &out, const ColorSpinorField &in) const |
virtual void | MdagM (ColorSpinorField &out, const ColorSpinorField &in) const |
virtual void | prepare (ColorSpinorField *&src, ColorSpinorField *&sol, ColorSpinorField &x, ColorSpinorField &b, const QudaSolutionType) const |
virtual void | reconstruct (ColorSpinorField &x, const ColorSpinorField &b, const QudaSolutionType) const |
void | createCoarseOp (GaugeField &Y, GaugeField &X, const Transfer &T, double kappa, double mass, double mu=0., double mu_factor=0.) const |
Create the coarse staggered operator. Unlike the Wilson operator, we assume a mass normalization, not a kappa normalization. Thus kappa gets ignored. More... | |
![]() | |
Dirac (const DiracParam ¶m) | |
Dirac (const Dirac &dirac) | |
virtual | ~Dirac () |
Dirac & | operator= (const Dirac &dirac) |
void | setCommDim (const int commDim_[QUDA_MAX_DIM]) const |
Enable / disable communications for the Dirac operator. More... | |
virtual void | checkFullSpinor (const ColorSpinorField &, const ColorSpinorField &) const |
void | checkSpinorAlias (const ColorSpinorField &, const ColorSpinorField &) const |
void | Mdag (ColorSpinorField &out, const ColorSpinorField &in) const |
void | MMdag (ColorSpinorField &out, const ColorSpinorField &in) const |
void | setMass (double mass) |
double | Kappa () const |
virtual double | Mu () const |
virtual double | MuFactor () const |
unsigned long long | Flops () const |
QudaMatPCType | getMatPCType () const |
int | getStencilSteps () const |
void | Dagger (QudaDagType dag) const |
void | flipDagger () const |
QudaPrecision | HaloPrecision () const |
void | setHaloPrecision (QudaPrecision halo_precision_) const |
![]() | |
Object () | |
virtual | ~Object () |
Additional Inherited Members | |
![]() | |
static Dirac * | create (const DiracParam ¶m) |
![]() | |
static void * | operator new (std::size_t size) |
static void | operator delete (void *p) |
static void * | operator new[] (std::size_t size) |
static void | operator delete[] (void *p) |
![]() | |
bool | newTmp (ColorSpinorField **, const ColorSpinorField &) const |
void | deleteTmp (ColorSpinorField **, const bool &reset) const |
![]() | |
cudaGaugeField * | gauge |
double | kappa |
double | mass |
int | laplace3D |
QudaMatPCType | matpcType |
QudaDagType | dagger |
unsigned long long | flops |
ColorSpinorField * | tmp1 |
ColorSpinorField * | tmp2 |
QudaDiracType | type |
QudaPrecision | halo_precision |
int | commDim [QUDA_MAX_DIM] |
TimeProfile | profile |
Definition at line 694 of file dirac_quda.h.
quda::DiracStaggered::DiracStaggered | ( | const DiracParam & | param | ) |
Definition at line 6 of file dirac_staggered.cpp.
quda::DiracStaggered::DiracStaggered | ( | const DiracStaggered & | dirac | ) |
Definition at line 8 of file dirac_staggered.cpp.
|
virtual |
Definition at line 10 of file dirac_staggered.cpp.
|
virtual |
Reimplemented from quda::Dirac.
Definition at line 20 of file dirac_staggered.cpp.
References errorQuda, quda::Dirac::gauge, quda::ColorSpinorField::Ndim(), quda::LatticeField::Precision(), QUDA_FULL_SITE_SUBSET, QUDA_PARITY_SITE_SUBSET, quda::ColorSpinorField::SiteSubset(), quda::ColorSpinorField::Stride(), quda::ColorSpinorField::Volume(), quda::LatticeField::VolumeCB(), and quda::ColorSpinorField::X().
Referenced by Dslash(), and DslashXpay().
|
virtual |
Create the coarse staggered operator. Unlike the Wilson operator, we assume a mass normalization, not a kappa normalization. Thus kappa gets ignored.
T[in] | Transfer operator defining the coarse grid |
Y[out] | Coarse link field |
X[out] | Coarse clover field |
kappa | Kappa parameter for the coarse operator (ignored, set to 1.0) |
mass | Mass parameter for the coarse operator (gets explicitly built into clover) |
Reimplemented from quda::Dirac.
Definition at line 133 of file dirac_staggered.cpp.
References errorQuda.
|
virtual |
Implements quda::Dirac.
Definition at line 46 of file dirac_staggered.cpp.
References quda::ApplyStaggered(), checkParitySpinor(), quda::Dirac::commDim, quda::Dirac::dagger, quda::Dirac::flops, quda::Dirac::gauge, quda::Dirac::profile, and quda::ColorSpinorField::Volume().
Referenced by quda::DiracStaggeredPC::M(), and MdagM().
|
virtual |
Implements quda::Dirac.
Definition at line 55 of file dirac_staggered.cpp.
References quda::ApplyStaggered(), checkParitySpinor(), quda::Dirac::commDim, quda::Dirac::dagger, quda::Dirac::flops, quda::Dirac::gauge, quda::Dirac::profile, QUDA_DAG_NO, QUDA_DAG_YES, and quda::ColorSpinorField::Volume().
Referenced by quda::DiracStaggeredPC::M(), MdagM(), quda::DiracStaggeredPC::prepare(), and quda::DiracStaggeredPC::reconstruct().
|
virtual |
Implements quda::Dirac.
Reimplemented in quda::DiracStaggeredPC.
Definition at line 78 of file dirac_staggered.cpp.
References quda::ApplyStaggered(), quda::Dirac::checkFullSpinor(), quda::Dirac::commDim, quda::Dirac::dagger, quda::Dirac::flops, quda::Dirac::gauge, quda::Dirac::mass, quda::Dirac::profile, QUDA_DAG_NO, QUDA_DAG_YES, QUDA_INVALID_PARITY, and quda::ColorSpinorField::Volume().
|
virtual |
Implements quda::Dirac.
Reimplemented in quda::DiracStaggeredPC.
Definition at line 100 of file dirac_staggered.cpp.
References quda::Dirac::deleteTmp(), Dslash(), DslashXpay(), quda::ColorSpinorField::Even(), quda::Dirac::mass, quda::Dirac::newTmp(), quda::ColorSpinorField::Odd(), QUDA_EVEN_PARITY, QUDA_ODD_PARITY, and quda::Dirac::tmp1.
DiracStaggered & quda::DiracStaggered::operator= | ( | const DiracStaggered & | dirac | ) |
Definition at line 12 of file dirac_staggered.cpp.
References quda::Dirac::operator=().
Referenced by quda::DiracStaggeredPC::operator=().
|
virtual |
Implements quda::Dirac.
Reimplemented in quda::DiracStaggeredPC.
Definition at line 115 of file dirac_staggered.cpp.
References errorQuda, QUDA_MATPC_SOLUTION, and QUDA_MATPCDAG_MATPC_SOLUTION.
|
virtual |
Implements quda::Dirac.
Reimplemented in quda::DiracStaggeredPC.
Definition at line 127 of file dirac_staggered.cpp.