QUDA v0.4.0
A library for QCD on GPUs
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
Dirac Class Reference

#include <dirac_quda.h>

Inheritance diagram for Dirac:

List of all members.

Public Member Functions

 Dirac (const DiracParam &param)
 Dirac (const Dirac &dirac)
virtual ~Dirac ()
Diracoperator= (const Dirac &dirac)
virtual void checkParitySpinor (const cudaColorSpinorField &, const cudaColorSpinorField &) const
virtual void checkFullSpinor (const cudaColorSpinorField &, const cudaColorSpinorField &) const
void checkSpinorAlias (const cudaColorSpinorField &, const cudaColorSpinorField &) const
virtual void Dslash (cudaColorSpinorField &out, const cudaColorSpinorField &in, const QudaParity parity) const =0
virtual void DslashXpay (cudaColorSpinorField &out, const cudaColorSpinorField &in, const QudaParity parity, const cudaColorSpinorField &x, const double &k) const =0
virtual void M (cudaColorSpinorField &out, const cudaColorSpinorField &in) const =0
virtual void MdagM (cudaColorSpinorField &out, const cudaColorSpinorField &in) const =0
void Mdag (cudaColorSpinorField &out, const cudaColorSpinorField &in) const
virtual void prepare (cudaColorSpinorField *&src, cudaColorSpinorField *&sol, cudaColorSpinorField &x, cudaColorSpinorField &b, const QudaSolutionType) const =0
virtual void reconstruct (cudaColorSpinorField &x, const cudaColorSpinorField &b, const QudaSolutionType) const =0
void setMass (double mass)
unsigned long long Flops () const
QudaVerbosity Verbose () const

Static Public Member Functions

static Diraccreate (const DiracParam &param)

Protected Member Functions

bool newTmp (cudaColorSpinorField **, const cudaColorSpinorField &) const
void deleteTmp (cudaColorSpinorField **, const bool &reset) const

Protected Attributes

cudaGaugeFieldgauge
double kappa
double mass
MatPCType matpcType
DagType dagger
unsigned long long flops
cudaColorSpinorFieldtmp1
cudaColorSpinorFieldtmp2
QudaTune tune
QudaVerbosity verbose
int commDim [QUDA_MAX_DIM]

Friends

class DiracMatrix
class DiracM
class DiracMdagM
class DiracMdag

Detailed Description

Definition at line 56 of file dirac_quda.h.


Constructor & Destructor Documentation

Dirac::Dirac ( const DiracParam param)

Definition at line 7 of file dirac.cpp.

Dirac::Dirac ( const Dirac dirac)

Definition at line 15 of file dirac.cpp.

Dirac::~Dirac ( ) [virtual]

Definition at line 23 of file dirac.cpp.


Member Function Documentation

void Dirac::checkFullSpinor ( const cudaColorSpinorField out,
const cudaColorSpinorField in 
) const [virtual]

Definition at line 110 of file dirac.cpp.

void Dirac::checkParitySpinor ( const cudaColorSpinorField out,
const cudaColorSpinorField in 
) const [virtual]

Reimplemented in DiracClover, and DiracStaggered.

Definition at line 73 of file dirac.cpp.

void Dirac::checkSpinorAlias ( const cudaColorSpinorField a,
const cudaColorSpinorField b 
) const

Definition at line 118 of file dirac.cpp.

Dirac * Dirac::create ( const DiracParam param) [static]

Definition at line 123 of file dirac.cpp.

void Dirac::deleteTmp ( cudaColorSpinorField **  a,
const bool &  reset 
) const [protected]

Definition at line 55 of file dirac.cpp.

virtual void Dirac::Dslash ( cudaColorSpinorField out,
const cudaColorSpinorField in,
const QudaParity  parity 
) const [pure virtual]
virtual void Dirac::DslashXpay ( cudaColorSpinorField out,
const cudaColorSpinorField in,
const QudaParity  parity,
const cudaColorSpinorField x,
const double &  k 
) const [pure virtual]
unsigned long long Dirac::Flops ( ) const [inline]

Definition at line 110 of file dirac_quda.h.

virtual void Dirac::M ( cudaColorSpinorField out,
const cudaColorSpinorField in 
) const [pure virtual]
void Dirac::Mdag ( cudaColorSpinorField out,
const cudaColorSpinorField in 
) const

Definition at line 64 of file dirac.cpp.

virtual void Dirac::MdagM ( cudaColorSpinorField out,
const cudaColorSpinorField in 
) const [pure virtual]
bool Dirac::newTmp ( cudaColorSpinorField **  tmp,
const cudaColorSpinorField a 
) const [protected]

Definition at line 47 of file dirac.cpp.

Dirac & Dirac::operator= ( const Dirac dirac)

Definition at line 27 of file dirac.cpp.

virtual void Dirac::prepare ( cudaColorSpinorField *&  src,
cudaColorSpinorField *&  sol,
cudaColorSpinorField x,
cudaColorSpinorField b,
const QudaSolutionType   
) const [pure virtual]
virtual void Dirac::reconstruct ( cudaColorSpinorField x,
const cudaColorSpinorField b,
const QudaSolutionType   
) const [pure virtual]
void Dirac::setMass ( double  mass) [inline]

Definition at line 106 of file dirac_quda.h.

QudaVerbosity Dirac::Verbose ( ) const [inline]

Definition at line 111 of file dirac_quda.h.


Friends And Related Function Documentation

friend class DiracM [friend]

Definition at line 59 of file dirac_quda.h.

friend class DiracMatrix [friend]

Definition at line 58 of file dirac_quda.h.

friend class DiracMdag [friend]

Definition at line 61 of file dirac_quda.h.

friend class DiracMdagM [friend]

Definition at line 60 of file dirac_quda.h.


Member Data Documentation

int Dirac::commDim[QUDA_MAX_DIM] [protected]

Definition at line 79 of file dirac_quda.h.

DagType Dirac::dagger [mutable, protected]

Definition at line 68 of file dirac_quda.h.

unsigned long long Dirac::flops [mutable, protected]

Definition at line 69 of file dirac_quda.h.

Definition at line 64 of file dirac_quda.h.

double Dirac::kappa [protected]

Definition at line 65 of file dirac_quda.h.

double Dirac::mass [protected]

Definition at line 66 of file dirac_quda.h.

MatPCType Dirac::matpcType [protected]

Definition at line 67 of file dirac_quda.h.

cudaColorSpinorField* Dirac::tmp1 [mutable, protected]

Definition at line 70 of file dirac_quda.h.

cudaColorSpinorField* Dirac::tmp2 [mutable, protected]

Definition at line 71 of file dirac_quda.h.

QudaTune Dirac::tune [protected]

Definition at line 76 of file dirac_quda.h.

Definition at line 77 of file dirac_quda.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines