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

A class implementing a lattice with the plaquette + rectangle gauge action. More...

#include <lattice.h>

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

List of all members.

Public Member Functions

 GimprRect ()
virtual ~GimprRect ()
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 sum of the plaquette and rectangle staples around a link.

Detailed Description

A class implementing a lattice with the plaquette + rectangle gauge action.

The action is

\[ -\frac{1}{3}\beta \sum_x \sum_\mu \sum_{\nu\neq\mu}[ (1-8 c_1) U_\mu(x) U_\nu(x+\nu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) +c_1 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) ] \]

Definition at line 1294 of file lattice.h.


Constructor & Destructor Documentation

Definition at line 96 of file g_impr_rect.C.

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

Here is the call graph for this function:


Member Function Documentation

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

Computes sum of the plaquette and rectangle staples around a link.

The sum of the staples around the link $ U_\mu(x) $ is:

\[ (1-8c_1)\sum_{\nu \neq \mu}[ U_\nu(x+\mu) U^\dagger_\mu(x+\nu) U^\dagger_\nu(x) + U^\dagger_\nu(x+\mu-\nu) U^\dagger_\mu(x-\nu) U_\nu(x-\nu)] \]

\[ + c_1\sum_{\nu \neq \mu}\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_\mu(x+\mu) U^\dagger_\nu(x+2\mu-\nu) U^\dagger_\mu(x+\mu-\nu) U^\dagger_\mu(x-\nu) U_\nu(x-\nu) \]

\[ + 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^\dagger_\nu(x+\mu-\nu) U^\dagger_\mu(x-\nu) U^\dagger_\mu(x-\mu-\nu) U_\nu(x-\mu-\nu) 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) \]

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

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

Implements cps::Lattice.

Definition at line 261 of file g_impr_rect.C.

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

Here is the call graph for this function:

ForceArg cps::GimprRect::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 65 of file g_impr_rect_force.C.

References cps::CBUF_MODE4, cps::dclock(), cps::fTimesV1PlusV2(), cps::Verbose::Func(), cps::Verbose::FuncEnd(), cps::GJP, cps::glb_max(), cps::glb_sum(), cps::print_flops(), cps::setCbufCntrlReg(), cps::GlobalJobParameter::TnodeSites(), 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::GimprRect::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 198 of file g_impr_rect.C.

References cps::Verbose::Func(), MATRIX_SIZE, cps::vecAddEquVec(), 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 107 of file g_impr_rect.C.

References cps::G_CLASS_IMPR_RECT.

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

Calculates the gauge force at site x and direction mu.

Definition at line 118 of file g_impr_rect.C.

References cps::CBUF_MODE4, MATRIX_SIZE, cps::mDotMEqual(), cps::mDotMPlus(), cps::moveMem(), cps::setCbufCntrlReg(), and cps::vecTimesEquFloat().

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 182 of file g_impr_rect.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: