QUDA  v1.1.0
A library for QCD on GPUs
Functions
wilson_dslash_reference.cpp File Reference
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <util_quda.h>
#include <host_utils.h>
#include <wilson_dslash_reference.h>
#include <gauge_field.h>
#include <color_spinor_field.h>
#include <dslash_reference.h>
#include <string.h>

Go to the source code of this file.

Functions

template<typename Float >
void multiplySpinorByDiracProjector (Float *res, int projIdx, Float *spinorIn)
 
template<typename sFloat , typename gFloat >
void dslashReference (sFloat *res, gFloat **gaugeFull, sFloat *spinorField, int oddBit, int daggerBit)
 
void wil_dslash (void *out, void **gauge, void *in, int oddBit, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
template<typename sFloat >
void twistGamma5 (sFloat *out, sFloat *in, const int dagger, const sFloat kappa, const sFloat mu, const QudaTwistFlavorType flavor, const int V, QudaTwistGamma5Type twist)
 
void twist_gamma5 (void *out, void *in, int daggerBit, double kappa, double mu, QudaTwistFlavorType flavor, int V, QudaTwistGamma5Type twist, QudaPrecision precision)
 
void tm_dslash (void *res, void **gaugeFull, void *spinorField, double kappa, double mu, QudaTwistFlavorType flavor, int oddBit, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void wil_mat (void *out, void **gauge, void *in, double kappa, int dagger_bit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void tm_mat (void *out, void **gauge, void *in, double kappa, double mu, QudaTwistFlavorType flavor, int dagger_bit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void wil_matpc (void *outEven, void **gauge, void *inEven, double kappa, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void tm_matpc (void *outEven, void **gauge, void *inEven, double kappa, double mu, QudaTwistFlavorType flavor, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
template<typename sFloat >
void ndegTwistGamma5 (sFloat *out1, sFloat *out2, sFloat *in1, sFloat *in2, const int dagger, const sFloat kappa, const sFloat mu, const sFloat epsilon, const int V, QudaTwistGamma5Type twist)
 
void ndeg_twist_gamma5 (void *outf1, void *outf2, void *inf1, void *inf2, const int dagger, const double kappa, const double mu, const double epsilon, const int Vf, QudaTwistGamma5Type twist, QudaPrecision precision)
 
void tm_ndeg_dslash (void *res1, void *res2, void **gauge, void *spinorField1, void *spinorField2, double kappa, double mu, double epsilon, int oddBit, int daggerBit, QudaMatPCType matpc_type, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void tm_ndeg_matpc (void *outEven1, void *outEven2, void **gauge, void *inEven1, void *inEven2, double kappa, double mu, double epsilon, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 
void tm_ndeg_mat (void *evenOut, void *oddOut, void **gauge, void *evenIn, void *oddIn, double kappa, double mu, double epsilon, int daggerBit, QudaPrecision precision, QudaGaugeParam &gauge_param)
 

Function Documentation

◆ dslashReference()

template<typename sFloat , typename gFloat >
void dslashReference ( sFloat *  res,
gFloat **  gaugeFull,
sFloat *  spinorField,
int  oddBit,
int  daggerBit 
)

Definition at line 104 of file wilson_dslash_reference.cpp.

◆ multiplySpinorByDiracProjector()

template<typename Float >
void multiplySpinorByDiracProjector ( Float *  res,
int  projIdx,
Float *  spinorIn 
)

Definition at line 72 of file wilson_dslash_reference.cpp.

◆ ndeg_twist_gamma5()

void ndeg_twist_gamma5 ( void *  outf1,
void *  outf2,
void *  inf1,
void *  inf2,
const int  dagger,
const double  kappa,
const double  mu,
const double  epsilon,
const int  Vf,
QudaTwistGamma5Type  twist,
QudaPrecision  precision 
)

Definition at line 455 of file wilson_dslash_reference.cpp.

◆ ndegTwistGamma5()

template<typename sFloat >
void ndegTwistGamma5 ( sFloat *  out1,
sFloat *  out2,
sFloat *  in1,
sFloat *  in2,
const int  dagger,
const sFloat  kappa,
const sFloat  mu,
const sFloat  epsilon,
const int  V,
QudaTwistGamma5Type  twist 
)

Definition at line 412 of file wilson_dslash_reference.cpp.

◆ tm_dslash()

void tm_dslash ( void *  res,
void **  gaugeFull,
void *  spinorField,
double  kappa,
double  mu,
QudaTwistFlavorType  flavor,
int  oddBit,
QudaMatPCType  matpc_type,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 277 of file wilson_dslash_reference.cpp.

◆ tm_mat()

void tm_mat ( void *  out,
void **  gauge,
void *  in,
double  kappa,
double  mu,
QudaTwistFlavorType  flavor,
int  dagger_bit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 309 of file wilson_dslash_reference.cpp.

◆ tm_matpc()

void tm_matpc ( void *  outEven,
void **  gauge,
void *  inEven,
double  kappa,
double  mu,
QudaTwistFlavorType  flavor,
QudaMatPCType  matpc_type,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 356 of file wilson_dslash_reference.cpp.

◆ tm_ndeg_dslash()

void tm_ndeg_dslash ( void *  res1,
void *  res2,
void **  gauge,
void *  spinorField1,
void *  spinorField2,
double  kappa,
double  mu,
double  epsilon,
int  oddBit,
int  daggerBit,
QudaMatPCType  matpc_type,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 468 of file wilson_dslash_reference.cpp.

◆ tm_ndeg_mat()

void tm_ndeg_mat ( void *  evenOut,
void *  oddOut,
void **  gauge,
void *  evenIn,
void *  oddIn,
double  kappa,
double  mu,
double  epsilon,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 554 of file wilson_dslash_reference.cpp.

◆ tm_ndeg_matpc()

void tm_ndeg_matpc ( void *  outEven1,
void *  outEven2,
void **  gauge,
void *  inEven1,
void *  inEven2,
double  kappa,
double  mu,
double  epsilon,
QudaMatPCType  matpc_type,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 484 of file wilson_dslash_reference.cpp.

◆ twist_gamma5()

void twist_gamma5 ( void *  out,
void *  in,
int  daggerBit,
double  kappa,
double  mu,
QudaTwistFlavorType  flavor,
int  V,
QudaTwistGamma5Type  twist,
QudaPrecision  precision 
)

Definition at line 266 of file wilson_dslash_reference.cpp.

◆ twistGamma5()

template<typename sFloat >
void twistGamma5 ( sFloat *  out,
sFloat *  in,
const int  dagger,
const sFloat  kappa,
const sFloat  mu,
const QudaTwistFlavorType  flavor,
const int  V,
QudaTwistGamma5Type  twist 
)

Definition at line 235 of file wilson_dslash_reference.cpp.

◆ wil_dslash()

void wil_dslash ( void *  out,
void **  gauge,
void *  in,
int  oddBit,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 175 of file wilson_dslash_reference.cpp.

◆ wil_mat()

void wil_mat ( void *  out,
void **  gauge,
void *  in,
double  kappa,
int  dagger_bit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 294 of file wilson_dslash_reference.cpp.

◆ wil_matpc()

void wil_matpc ( void *  outEven,
void **  gauge,
void *  inEven,
double  kappa,
QudaMatPCType  matpc_type,
int  daggerBit,
QudaPrecision  precision,
QudaGaugeParam gauge_param 
)

Definition at line 332 of file wilson_dslash_reference.cpp.