|
QUDA
1.0.0
|
#include <stdio.h>#include <stdlib.h>#include <math.h>#include <complex>#include <util_quda.h>#include <test_util.h>#include <wilson_dslash_reference.h>#include <blas_reference.h>
Go to the source code of this file.
Functions | |
| template<typename sFloat , typename cFloat > | |
| void | cloverReference (sFloat *out, cFloat *clover, sFloat *in, int parity) |
| Apply the clover matrix field. More... | |
| void | apply_clover (void *out, void *clover, void *in, int parity, QudaPrecision precision) |
| void | clover_dslash (void *out, void **gauge, void *clover, void *in, int parity, int dagger, QudaPrecision precision, QudaGaugeParam ¶m) |
| 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 | clover_mat (void *out, void **gauge, void *clover, void *in, double kappa, int dagger, QudaPrecision precision, QudaGaugeParam &gauge_param) |
| void | applyTwist (void *out, void *in, void *tmpH, double a, QudaPrecision precision) |
| void | twistCloverGamma5 (void *out, void *in, void *clover, void *cInv, const int dagger, const double kappa, const double mu, const QudaTwistFlavorType flavor, const int parity, QudaTwistGamma5Type twist, QudaPrecision precision) |
| void | tmc_dslash (void *out, void **gauge, void *in, void *clover, void *cInv, double kappa, double mu, QudaTwistFlavorType flavor, int parity, QudaMatPCType matpc_type, int dagger, QudaPrecision precision, QudaGaugeParam ¶m) |
| 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 | 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 | ||
| ) |
Definition at line 66 of file clover_reference.cpp.
References cloverReference(), errorQuda, QUDA_DOUBLE_PRECISION, and QUDA_SINGLE_PRECISION.
Referenced by clover_dslash(), clover_mat(), clover_matpc(), and twistCloverGamma5().


| void applyTwist | ( | void * | out, |
| void * | in, | ||
| void * | tmpH, | ||
| double | a, | ||
| QudaPrecision | precision | ||
| ) |
Definition at line 175 of file clover_reference.cpp.
References errorQuda, QUDA_DOUBLE_PRECISION, QUDA_SINGLE_PRECISION, quda::s, and Vh.
Referenced by twistCloverGamma5().

| void clover_dslash | ( | void * | out, |
| void ** | gauge, | ||
| void * | clover, | ||
| void * | in, | ||
| int | parity, | ||
| int | dagger, | ||
| QudaPrecision | precision, | ||
| QudaGaugeParam & | param | ||
| ) |
Definition at line 81 of file clover_reference.cpp.
References apply_clover(), spinorSiteSize, tmp, Vh, and wil_dslash().
Referenced by dslashRef().


| void clover_mat | ( | void * | out, |
| void ** | gauge, | ||
| void * | clover, | ||
| void * | in, | ||
| double | kappa, | ||
| int | dagger, | ||
| QudaPrecision | precision, | ||
| QudaGaugeParam & | gauge_param | ||
| ) |
Definition at line 149 of file clover_reference.cpp.
References apply_clover(), in, out, spinorSiteSize, tmp, V, Vh, wil_dslash(), and quda::blas::xpay().
Referenced by dslashRef(), and main().


| 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 | ||
| ) |
Definition at line 92 of file clover_reference.cpp.
References apply_clover(), errorQuda, kappa, QUDA_MATPC_EVEN_EVEN, QUDA_MATPC_EVEN_EVEN_ASYMMETRIC, QUDA_MATPC_ODD_ODD, QUDA_MATPC_ODD_ODD_ASYMMETRIC, spinorSiteSize, tmp, Vh, wil_dslash(), and quda::blas::xpay().
Referenced by dslashRef(), and main().


| void cloverReference | ( | sFloat * | out, |
| cFloat * | clover, | ||
| sFloat * | in, | ||
| int | parity | ||
| ) |
Apply the clover matrix field.
| [out] | out | Result field (single parity) |
| [in] | clover | Clover-matrix field (full field) |
| [in] | in | Input field (single parity) |
| [in] | parity | Parity to which we are applying the clover field |
Definition at line 20 of file clover_reference.cpp.
References conj(), nColor, and Vh.
Referenced by apply_clover().


| void tmc_dslash | ( | void * | out, |
| void ** | gauge, | ||
| void * | in, | ||
| void * | clover, | ||
| void * | cInv, | ||
| double | kappa, | ||
| double | mu, | ||
| QudaTwistFlavorType | flavor, | ||
| int | parity, | ||
| QudaMatPCType | matpc_type, | ||
| int | dagger, | ||
| QudaPrecision | precision, | ||
| QudaGaugeParam & | param | ||
| ) |
Definition at line 234 of file clover_reference.cpp.
References QUDA_MATPC_EVEN_EVEN_ASYMMETRIC, QUDA_MATPC_ODD_ODD_ASYMMETRIC, QUDA_TWIST_GAMMA5_INVERSE, spinorSiteSize, tmp1, tmp2, twistCloverGamma5(), Vh, and wil_dslash().
Referenced by dslashRef().


| void tmc_mat | ( | void * | out, |
| void ** | gauge, | ||
| void * | clover, | ||
| void * | in, | ||
| double | kappa, | ||
| double | mu, | ||
| QudaTwistFlavorType | flavor, | ||
| int | dagger, | ||
| QudaPrecision | precision, | ||
| QudaGaugeParam & | gauge_param | ||
| ) |
Definition at line 257 of file clover_reference.cpp.
References in, out, QUDA_TWIST_GAMMA5_DIRECT, spinorSiteSize, tmp, twistCloverGamma5(), V, Vh, wil_dslash(), and quda::blas::xpay().
Referenced by dslashRef(), and main().


| 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 | ||
| ) |
Definition at line 284 of file clover_reference.cpp.
References errorQuda, kappa, QUDA_MATPC_EVEN_EVEN, QUDA_MATPC_EVEN_EVEN_ASYMMETRIC, QUDA_MATPC_ODD_ODD, QUDA_MATPC_ODD_ODD_ASYMMETRIC, QUDA_TWIST_GAMMA5_DIRECT, QUDA_TWIST_GAMMA5_INVERSE, spinorSiteSize, tmp1, tmp2, twistCloverGamma5(), Vh, wil_dslash(), and quda::blas::xpay().
Referenced by dslashRef(), and main().


| void twistCloverGamma5 | ( | void * | out, |
| void * | in, | ||
| void * | clover, | ||
| void * | cInv, | ||
| const int | dagger, | ||
| const double | kappa, | ||
| const double | mu, | ||
| const QudaTwistFlavorType | flavor, | ||
| const int | parity, | ||
| QudaTwistGamma5Type | twist, | ||
| QudaPrecision | precision | ||
| ) |
Definition at line 203 of file clover_reference.cpp.
References apply_clover(), applyTwist(), QUDA_TWIST_GAMMA5_DIRECT, QUDA_TWIST_GAMMA5_INVERSE, spinorSiteSize, tmp1, tmp2, and Vh.
Referenced by tmc_dslash(), tmc_mat(), and tmc_matpc().


1.8.13