QUDA
v1.1.0
A library for QCD on GPUs
|
#include <random_quda.h>
Go to the source code of this file.
Namespaces | |
quda | |
Functions | |
void | quda::gaugeObservables (GaugeField &u, QudaGaugeObservableParam ¶m, TimeProfile &profile) |
Calculates a variety of gauge-field observables. More... | |
void | quda::projectSU3 (GaugeField &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. More... | |
double3 | quda::plaquette (const GaugeField &U) |
Compute the plaquette of the gauge field. More... | |
void | quda::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 random Gaussian distributed field in the Lie algebra using the anti-Hermitation convention. If U is in the group then we create a Gaussian distributed su(n) field and exponentiate it, e.g., U = exp(sigma * H), where H is the distributed su(n) field and sigma is the width of the distribution (sigma = 0 results in a free field, and sigma = 1 has maximum disorder). More... | |
void | quda::gaugeGauss (GaugeField &U, unsigned long long seed, double epsilon) |
Generate Gaussian distributed su(N) or SU(N) fields. If U is a momentum field, then we generate random Gaussian distributed field in the Lie algebra using the anti-Hermitation convention. If U is in the group then we create a Gaussian distributed su(n) field and exponentiate it, e.g., U = exp(sigma * H), where H is the distributed su(n) field and sigma is the width of the distribution (sigma = 0 results in a free field, and sigma = 1 has maximum disorder). More... | |
void | quda::APEStep (GaugeField &dataDs, GaugeField &dataOr, double alpha) |
Apply APE smearing to the gauge field. More... | |
void | quda::STOUTStep (GaugeField &dataDs, GaugeField &dataOr, double rho) |
Apply STOUT smearing to the gauge field. More... | |
void | quda::OvrImpSTOUTStep (GaugeField &dataDs, GaugeField &dataOr, double rho, double epsilon) |
Apply Over Improved STOUT smearing to the gauge field. More... | |
void | quda::WFlowStep (GaugeField &out, GaugeField &temp, GaugeField &in, double epsilon, QudaWFlowType wflow_type) |
Apply Wilson Flow steps W1, W2, Vt to the gauge field. This routine assumes that the input and output fields are extended, with the input field being exchanged prior to calling this function. On exit from this routine, the output field will have been exchanged. More... | |
void | quda::gaugeFixingOVR (GaugeField &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. More... | |
void | quda::gaugeFixingFFT (GaugeField &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. More... | |
void | quda::computeFmunu (GaugeField &Fmunu, const GaugeField &gauge) |
Compute the Fmunu tensor. More... | |
void | quda::computeQCharge (double energy[3], double &qcharge, const GaugeField &Fmunu) |
Compute the topological charge and field energy. More... | |
void | quda::computeQChargeDensity (double energy[3], double &qcharge, void *qdensity, const GaugeField &Fmunu) |
Compute the topological charge, field energy and the topological charge density per lattice site. More... | |