Columbia Physics System  5.0.16..1
Public Member Functions
cps::GimprOLSym Class Reference

A class implementing a lattice with the 1-loop Symanzik improved gauge action. More...

#include <lattice.h>

Inheritance diagram for cps::GimprOLSym:
Inheritance graph
[legend]
Collaboration diagram for cps::GimprOLSym:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 GimprOLSym ()
virtual ~GimprOLSym ()
GclassType Gclass ()
 Returns the type of gauge action.
void GactionGradient (Matrix &grad, int *x, int mu)
 Calculates the partial derivative of the gauge action w.r.t. the link U_mu(x).
void GforceSite (Matrix &force, int *x, int mu)
 Calculates the gauge force at site x and direction mu.
ForceArg EvolveMomGforce (Matrix *mom, Float step_size)
 Molecular dynamics evolution of the conjugate momentum.
Float GhamiltonNode ()
 Computes the pure gauge action on the local sublattice.
void AllStaple (Matrix &stap, const int *x, int mu)
 Computes the sum of all the staples around a link.

Detailed Description

A class implementing a lattice with the 1-loop Symanzik improved gauge action.

This is a sum of the plaquette, rectangle and cube loops:

\[ \sum_x\sum_\mu\sum_{\nu>\mu} \left[\right. U_\mu(x) U_\nu(x+\nu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) \]

\[ -\frac{ 1 + 0.4805 \alpha_s}{20 u_0^2} U_\mu(x) U_\mu(x+\mu) U_\nu(x+2\mu) U^\dagger_\mu(x+\mu+\nu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) \]

\[ -\frac{ 0.03325 \alpha_s}{u_0^2} \sum_{\rho>\nu} U_\mu(x) U_\nu(x+\mu) U_\rho(x+\mu+\nu) U^\dagger_\mu(x+\mu+\nu+\rho) U^\dagger_\nu(x+\nu+\rho) U^\dagger_\rho(x+\rho) \left.\right] \]

where $u_0$ is the tadpole coefficient and $\alpha_s = -4\log(u_0)/3.06839$.

Definition at line 1510 of file lattice.h.


Constructor & Destructor Documentation

Definition at line 101 of file g_impr_OLSym.C.

References cps::Verbose::Func(), and cps::VRB.

Here is the call graph for this function:


Member Function Documentation

void cps::GimprOLSym::AllStaple ( Matrix stap,
const int *  x,
int  mu 
) [virtual]

Computes the sum of all the staples around a link.

The staple sum around the link $ U_\mu(x) $ is

\[ \sum_{\pm \nu, |\nu|\neq \mu} \left\{\right. U_\nu(x+\mu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) \]

\[ -\frac{ 1 + 0.4805 \alpha_s}{20 u_0^2} \left[\right. U_\mu(x+\mu) U_\nu(x+2\mu) U^\dagger_\mu(x+\mu+\nu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) \]

\[ + U_\nu(x+\mu) U^\dagger_\mu(x+\nu) U^\dagger_\mu(x-\mu+\nu) U^\dagger_\nu(x-\mu) U_\mu(x-\mu) \]

\[ + U_\nu(x+\mu) U_\nu(x+\mu+\nu) U^\dagger_\mu(x+2\nu) U^\dagger_\nu(x+\nu) U^\dagger_\nu(x) \left.\right]\]

\[ -\frac{ 0.03325 \alpha_s}{u_0^2} \sum_{\pm \rho, |\rho|\neq \nu, |\rho|\neq \mu} U_\nu(x+\mu) U_\rho(x+\mu+\nu) U_{-\mu}(x+\mu+\nu+\rho) U_{-\nu}(x+\nu+\rho) U_{-\rho}(x+\rho) \left.\right\} \]

where $u_0$ is the tadpole coefficient and $\alpha_s = -4\log(u_0)/3.06839$.

Parameters:
stapThe computed staple sum.
xThe coordinates of the lattice site
muThe link direction

Implements cps::Lattice.

Definition at line 287 of file g_impr_OLSym.C.

References cps::Verbose::Func(), MATRIX_SIZE, cps::vecAddEquVec(), cps::vecTimesEquFloat(), and cps::VRB.

Here is the call graph for this function:

ForceArg cps::GimprOLSym::EvolveMomGforce ( Matrix mom,
Float  step_size 
) [virtual]

Molecular dynamics evolution of the conjugate momentum.

The momentum is evolved for a single molecular dynamics timestep using the force from the pure gauge action.

Parameters:
momThe momentum matrices on all links.
step_sizeThe molecular dynamics timestep used in the numerical integration.
Postcondition:
mom is assigned the value of the momentum after the molecular dynamics evolution.

Implements cps::Lattice.

Definition at line 19 of file g_impr_OLSym_force.C.

References cps::Matrix::Dagger(), cps::dclock(), cps::ffree(), cps::fmalloc(), cps::fTimesV1PlusV2(), cps::Verbose::Func(), cps::GJP, cps::glb_max(), cps::glb_sum(), N, cps::print_flops(), cps::ParTransGauge::run(), cps::GlobalJobParameter::TnodeSites(), vaxpy3_m(), cps::GlobalJobParameter::VolNodeSites(), cps::GlobalJobParameter::VolSites(), cps::VRB, cps::GlobalJobParameter::XnodeSites(), cps::GlobalJobParameter::YnodeSites(), and cps::GlobalJobParameter::ZnodeSites().

Here is the call graph for this function:

void cps::GimprOLSym::GactionGradient ( Matrix grad,
int *  x,
int  mu 
) [virtual]

Calculates the partial derivative of the gauge action w.r.t. the link U_mu(x).

Parameters:
gradThe computed gradient.
xThe coordinates of the lattice site.
muThe direction of the link.

Implements cps::Lattice.

Definition at line 233 of file g_impr_OLSym.C.

References cps::Verbose::Func(), MATRIX_SIZE, cps::vecTimesEquFloat(), and cps::VRB.

Here is the call graph for this function:

Returns the type of gauge action.

Implements cps::Lattice.

Definition at line 112 of file g_impr_OLSym.C.

References cps::G_CLASS_IMPR_OLSYM.

void cps::GimprOLSym::GforceSite ( Matrix force,
int *  x,
int  mu 
)

Calculates the gauge force at site x and direction mu.

Definition at line 125 of file g_impr_OLSym.C.

References cps::CBUF_MODE4, cps::Verbose::Func(), MATRIX_SIZE, cps::mDotMEqual(), cps::moveMem(), cps::setCbufCntrlReg(), cps::vecTimesEquFloat(), and cps::VRB.

Here is the call graph for this function:

Computes the pure gauge action on the local sublattice.

Returns:
The value of the pure gauge action on this node.

Implements cps::Lattice.

Definition at line 213 of file g_impr_OLSym.C.

References cps::Verbose::Func(), and cps::VRB.

Here is the call graph for this function:


The documentation for this class was generated from the following files: