CHROMA
|
Base class for gauge actions with links appearing linearly in the action. More...
#include <gaugeact.h>
Public Types | |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
virtual | ~LinearGaugeAction () |
Virtual destructor to help with cleanup;. More... | |
virtual void | staple (LatticeColorMatrix &result, const Handle< GaugeState< P, Q > > &state, int mu, int cb) const =0 |
Compute staple. More... | |
Public Member Functions inherited from Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~GaugeAction () |
Virtual destructor to help with cleanup;. More... | |
virtual const CreateGaugeState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > & | getCreateState () const=0 |
Return the factory object that produces a state. More... | |
virtual GaugeState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * | createState (const multi1d< LatticeColorMatrix > &q) const |
Given links, create the state. More... | |
virtual const GaugeBC< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > & | getGaugeBC () const |
Return the gauge BC object for this action. More... | |
virtual const Set & | getSet (void) const=0 |
Return the set on which the gauge action is defined. More... | |
virtual void | deriv (multi1d< LatticeColorMatrix > &result, const Handle< GaugeState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > &state) const |
Compute dS/dU. More... | |
virtual Double | S (const Handle< GaugeState< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > &state) const=0 |
Compute the action on a gauge configuration. More... | |
Base class for gauge actions with links appearing linearly in the action.
Here, we are assuming that the "Q" must be a multi1d<LatticeColorMatrix> to be able to use heatbath. Namely, each gauge link must appear in the Lagrangian density only once.
To fully support heatbath, this code needs more work so that 2-link actions can also be supported.
Definition at line 79 of file gaugeact.h.
typedef multi1d<LatticeColorMatrix> Chroma::LinearGaugeAction::P |
Definition at line 82 of file gaugeact.h.
typedef multi1d<LatticeColorMatrix> Chroma::LinearGaugeAction::Q |
Definition at line 83 of file gaugeact.h.
|
inlinevirtual |
Virtual destructor to help with cleanup;.
Definition at line 86 of file gaugeact.h.
|
pure virtual |
Compute staple.
Default version. Derived class should override this if needed.
Implemented in Chroma::WilsonGaugeAct, Chroma::WilsonCoarseFineGaugeAct, Chroma::WilsonCoarseFine1LoopGaugeAct, Chroma::TemporalWilsonGaugeAct, Chroma::SpatialWilsonGaugeAct, Chroma::SpatialTwoPlaqGaugeAct, Chroma::SFPlaqPlusTwoPlaqGaugeActEnv::GaugeAct, Chroma::SFPlaqPlusAdjointGaugeActEnv::GaugeAct, Chroma::RGGaugeAct, Chroma::RectGaugeAct, Chroma::RBCGaugeAct, Chroma::PlaqPlusTwoPlaqGaugeActEnv::GaugeAct, Chroma::PlaqPlusSpatialTwoPlaqGaugeAct, Chroma::PlaqPlusPlaqPowerGaugeActEnv::GaugeAct, Chroma::PlaqPlusAdjointGaugeActEnv::GaugeAct, Chroma::PlaqPlusAdjPowerGaugeActEnv::GaugeAct, Chroma::PlaqGaugeAct, Chroma::PgGaugeAct, Chroma::LWTreeGaugeAct, Chroma::LW1LoopGaugeAct, Chroma::ConstrainedPlaqGaugeActEnv::GaugeAct, Chroma::CharacterGaugeActEnv::GaugeAct, Chroma::AnisoSymTemporalGaugeAct, Chroma::AnisoSymSpatialGaugeAct, and Chroma::AnisoSpectrumGaugeAct.
Referenced by Chroma::mciter().