1 #ifndef _UNITARIZATION_LINKS_QUDA_H 2 #define _UNITARIZATION_LINKS_QUDA_H 33 bool allow_svd,
bool svd_only,
38 void unitarizeLinks(cudaGaugeField& outfield,
const cudaGaugeField &infield,
int *fails);
41 bool isUnitary(
const cpuGaugeField& field,
double max_error);
57 #endif // _UNITARIZATION_LINKS_H void setUnitarizeLinksConstants(double unitarize_eps, double max_error, bool allow_svd, bool svd_only, double svd_rel_error, double svd_abs_error)
bool isUnitary(const cpuGaugeField &field, double max_error)
static double svd_rel_error
void unitarizeLinks(cudaGaugeField &outfield, const cudaGaugeField &infield, int *fails)
static double svd_abs_error
void projectSU3(cudaGaugeField &U, double tol, int *fails)
Project the input gauge field onto the SU(3) group. This is a destructive operation. The number of link failures is reported so appropriate action can be taken.
void unitarizeLinksCPU(cpuGaugeField &outfield, const cpuGaugeField &infield)
static double unitarize_eps