QUDA  v0.5.0
A library for QCD on GPUs
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
quda::Dirac Class Referenceabstract

#include <dirac_quda.h>

+ Inheritance diagram for quda::Dirac:

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 76 of file dirac_quda.h.

Constructor & Destructor Documentation

quda::Dirac::Dirac ( const DiracParam param)

Definition at line 12 of file dirac.cpp.

quda::Dirac::Dirac ( const Dirac dirac)

Definition at line 23 of file dirac.cpp.

quda::Dirac::~Dirac ( )
virtual

Definition at line 34 of file dirac.cpp.

Member Function Documentation

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

Definition at line 118 of file dirac.cpp.

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

Reimplemented in quda::DiracStaggered, and quda::DiracClover.

Definition at line 81 of file dirac.cpp.

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

Definition at line 126 of file dirac.cpp.

Dirac * quda::Dirac::create ( const DiracParam param)
static

Definition at line 131 of file dirac.cpp.

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

Definition at line 63 of file dirac.cpp.

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

Definition at line 130 of file dirac_quda.h.

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

Definition at line 72 of file dirac.cpp.

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

Definition at line 55 of file dirac.cpp.

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

Definition at line 36 of file dirac.cpp.

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

Definition at line 126 of file dirac_quda.h.

QudaVerbosity quda::Dirac::Verbose ( ) const
inline

Definition at line 131 of file dirac_quda.h.

Friends And Related Function Documentation

friend class DiracM
friend

Definition at line 79 of file dirac_quda.h.

friend class DiracMatrix
friend

Definition at line 78 of file dirac_quda.h.

friend class DiracMdag
friend

Definition at line 81 of file dirac_quda.h.

friend class DiracMdagM
friend

Definition at line 80 of file dirac_quda.h.

Member Data Documentation

int quda::Dirac::commDim[QUDA_MAX_DIM]
protected

Definition at line 99 of file dirac_quda.h.

DagType quda::Dirac::dagger
mutableprotected

Definition at line 88 of file dirac_quda.h.

unsigned long long quda::Dirac::flops
mutableprotected

Definition at line 89 of file dirac_quda.h.

cudaGaugeField& quda::Dirac::gauge
protected

Definition at line 84 of file dirac_quda.h.

double quda::Dirac::kappa
protected

Definition at line 85 of file dirac_quda.h.

double quda::Dirac::mass
protected

Definition at line 86 of file dirac_quda.h.

MatPCType quda::Dirac::matpcType
protected

Definition at line 87 of file dirac_quda.h.

cudaColorSpinorField* quda::Dirac::tmp1
mutableprotected

Definition at line 90 of file dirac_quda.h.

cudaColorSpinorField* quda::Dirac::tmp2
mutableprotected

Definition at line 91 of file dirac_quda.h.

QudaTune quda::Dirac::tune
protected

Definition at line 96 of file dirac_quda.h.

QudaVerbosity quda::Dirac::verbose
protected

Definition at line 97 of file dirac_quda.h.


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