QUDA  v1.1.0
A library for QCD on GPUs
wilson_dslash_reference.h
Go to the documentation of this file.
1 #ifndef _WILSON_DSLASH_REFERENCE_H
2 #define _WILSON_DSLASH_REFERENCE_H
3 
4 #include <enum_quda.h>
5 #include <quda.h>
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11  void wil_dslash(void *res, void **gauge, void *spinorField, int oddBit,
12  int daggerBit, QudaPrecision precision, QudaGaugeParam &param);
13 
14  void wil_mat(void *out, void **gauge, void *in, double kappa, int daggerBit,
15  QudaPrecision precision, QudaGaugeParam &param);
16 
17  void wil_matpc(void *out, void **gauge, void *in, double kappa,
18  QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &param);
19 
20  void tm_dslash(void *res, void **gauge, void *spinorField, double kappa,
21  double mu, QudaTwistFlavorType flavor, int oddBit, QudaMatPCType matpc_type,
22  int daggerBit, QudaPrecision sprecision, QudaGaugeParam &param);
23 
24  void tm_mat(void *out, void **gauge, void *in, double kappa, double mu,
25  QudaTwistFlavorType flavor, int daggerBit, QudaPrecision precision, QudaGaugeParam &param);
26 
27  void tm_matpc(void *out, void **gauge, void *in, double kappa, double mu,
29  int daggerBit, QudaPrecision precision, QudaGaugeParam &param);
30 
31  void tmc_dslash(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa,
32  double mu, QudaTwistFlavorType flavor, int oddBit, QudaMatPCType matpc_type,
33  int daggerBit, QudaPrecision sprecision, QudaGaugeParam &param);
34 
35  void tmc_mat(void *out, void **gauge, void *clover, void *in, double kappa, double mu,
37 
38  void tmc_matpc(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu, QudaTwistFlavorType flavor,
40 
41  void tm_ndeg_dslash(void *res1, void *res2, void **gaugeFull, void *spinorField1, void *spinorField2,
42  double kappa, double mu, double epsilon, int oddBit, int daggerBit, QudaMatPCType matpc_type,
44  void tm_ndeg_matpc(void *outEven1, void *outEven2, void **gauge, void *inEven1, void *inEven2, double kappa, double mu, double epsilon,
45  QudaMatPCType matpc_type, int dagger_bit, QudaPrecision precision, QudaGaugeParam &gauge_param);
46 
47  void tm_ndeg_mat(void *evenOut, void* oddOut, void **gauge, void *evenIn, void *oddIn,
48  double kappa, double mu, double epsilon, int dagger_bit, QudaPrecision precision, QudaGaugeParam &gauge_param);
49 
50  void apply_clover(void *out, void *clover, void *in, int parity, QudaPrecision precision);
51 
52  void clover_dslash(void *res, void **gauge, void *clover, void *spinorField, int oddBit,
53  int daggerBit, QudaPrecision precision, QudaGaugeParam &param);
54 
55  void clover_mat(void *out, void **gauge, void *clover, void *in, double kappa,
57 
58  void clover_matpc(void *out, void **gauge, void *clover, void *clover_inv, void *in, double kappa,
60 
61  void cloverHasenbuchTwist_mat(void *out, void **gauge, void *clover, void *in, double kappa, double mu, int dagger,
63 
64  void cloverHasenbuschTwist_matpc(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu,
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 
72 #endif // _WILSON_DSLASH_REFERENCE_H
double kappa
double epsilon
double mu
QudaMatPCType matpc_type
bool dagger
QudaParity parity
Definition: covdev_test.cpp:40
QudaGaugeParam gauge_param
Definition: covdev_test.cpp:26
enum QudaPrecision_s QudaPrecision
enum QudaTwistFlavorType_s QudaTwistFlavorType
enum QudaMatPCType_s QudaMatPCType
QudaGaugeParam param
Definition: pack_test.cpp:18
Main header file for the QUDA library.
void wil_matpc(void *out, void **gauge, void *in, double kappa, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void tm_mat(void *out, void **gauge, void *in, double kappa, double mu, QudaTwistFlavorType flavor, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void wil_dslash(void *res, void **gauge, void *spinorField, int oddBit, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void tm_matpc(void *out, void **gauge, void *in, double kappa, double mu, QudaTwistFlavorType flavor, QudaMatPCType matpc_type, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void tmc_dslash(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu, QudaTwistFlavorType flavor, int oddBit, QudaMatPCType matpc_type, int daggerBit, QudaPrecision sprecision, QudaGaugeParam &param)
void clover_mat(void *out, void **gauge, void *clover, void *in, double kappa, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param)
void wil_mat(void *out, void **gauge, void *in, double kappa, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void tmc_mat(void *out, void **gauge, void *clover, void *in, double kappa, double mu, QudaTwistFlavorType flavor, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param)
void tm_ndeg_dslash(void *res1, void *res2, void **gaugeFull, void *spinorField1, void *spinorField2, double kappa, double mu, double epsilon, int oddBit, int daggerBit, QudaMatPCType matpc_type, QudaPrecision precision, QudaGaugeParam &gauge_param)
void clover_matpc(void *out, void **gauge, void *clover, void *clover_inv, void *in, double kappa, QudaMatPCType matpc_type, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param)
void tm_dslash(void *res, void **gauge, void *spinorField, double kappa, double mu, QudaTwistFlavorType flavor, int oddBit, QudaMatPCType matpc_type, int daggerBit, QudaPrecision sprecision, QudaGaugeParam &param)
void tm_ndeg_mat(void *evenOut, void *oddOut, void **gauge, void *evenIn, void *oddIn, double kappa, double mu, double epsilon, int dagger_bit, 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 dagger_bit, QudaPrecision precision, QudaGaugeParam &gauge_param)
void clover_dslash(void *res, void **gauge, void *clover, void *spinorField, int oddBit, int daggerBit, QudaPrecision precision, QudaGaugeParam &param)
void cloverHasenbuschTwist_matpc(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu, QudaMatPCType matpc_type, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param)
void cloverHasenbuchTwist_mat(void *out, void **gauge, void *clover, void *in, double kappa, double mu, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param, QudaMatPCType matpc_type)
void tmc_matpc(void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu, QudaTwistFlavorType flavor, QudaMatPCType matpc_type, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param)
void apply_clover(void *out, void *clover, void *in, int parity, QudaPrecision precision)