QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
gauge_tools.h
Go to the documentation of this file.
1 #include <random_quda.h>
2 
3 namespace quda
4 {
5 
14  double3 plaquette(const GaugeField &U);
15 
31  void gaugeGauss(GaugeField &U, RNG &rngstate, double epsilon);
32 
48  void gaugeGauss(GaugeField &U, unsigned long long seed, double epsilon);
49 
57  void APEStep(GaugeField &dataDs, const GaugeField &dataOr, double alpha);
58 
66  void STOUTStep(GaugeField &dataDs, const GaugeField &dataOr, double rho);
67 
76  void OvrImpSTOUTStep(GaugeField &dataDs, const GaugeField &dataOr, double rho, double epsilon);
77 
91  void gaugefixingOVR( cudaGaugeField& data,
92  const int gauge_dir,
93  const int Nsteps,
94  const int verbose_interval,
95  const double relax_boost,
96  const double tolerance,
97  const int reunit_interval,
98  const int stopWtheta);
99 
113  void gaugefixingFFT( cudaGaugeField& data, const int gauge_dir,
114  const int Nsteps,
115  const int verbose_interval,
116  const double alpha,
117  const int autotune,
118  const double tolerance,
119  const int stopWtheta);
120 
126  void computeFmunu(GaugeField &Fmunu, const GaugeField &gauge);
127 
133  double computeQCharge(const GaugeField &Fmunu);
134 
141  double computeQChargeDensity(const GaugeField &Fmunu, void *result);
142 
143 } // namespace quda
void computeFmunu(GaugeField &Fmunu, const GaugeField &gauge)
Compute the Fmunu tensor.
double computeQCharge(const GaugeField &Fmunu)
Compute the topological charge.
void STOUTStep(GaugeField &dataDs, const GaugeField &dataOr, double rho)
Apply STOUT smearing to the gauge field.
Definition: gauge_stout.cu:129
double epsilon
Definition: test_util.cpp:1649
double computeQChargeDensity(const GaugeField &Fmunu, void *result)
Compute the topological charge density per lattice site.
void gaugefixingOVR(cudaGaugeField &data, const int gauge_dir, const int Nsteps, const int verbose_interval, const double relax_boost, const double tolerance, const int reunit_interval, const int stopWtheta)
Gauge fixing with overrelaxation with support for single and multi GPU.
void APEStep(GaugeField &dataDs, const GaugeField &dataOr, double alpha)
Apply APE smearing to the gauge field.
Definition: gauge_ape.cu:128
void OvrImpSTOUTStep(GaugeField &dataDs, const GaugeField &dataOr, double rho, double epsilon)
Apply Over Improved STOUT smearing to the gauge field.
Definition: gauge_stout.cu:269
void gaugefixingFFT(cudaGaugeField &data, const int gauge_dir, const int Nsteps, const int verbose_interval, const double alpha, const int autotune, const double tolerance, const int stopWtheta)
Gauge fixing with Steepest descent method with FFTs with support for single GPU only.
void gaugeGauss(GaugeField &U, RNG &rngstate, double epsilon)
Generate Gaussian distributed su(N) or SU(N) fields. If U is a momentum field, then we generate rando...
double3 plaquette(const GaugeField &U)
Compute the plaquette of the gauge field.
Definition: gauge_plaq.cu:65