CHROMA
|
Temporal anisotropic Symanzik improved gauge action. More...
#include <aniso_sym_temporal_gaugeact.h>
Public Types | |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Types inherited from Chroma::LinearGaugeAction | |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
AnisoSymTemporalGaugeAct (Handle< CreateGaugeState< P, Q > > cgs_, const AnisoSymGaugeActParams &p) | |
Read beta from a param struct. More... | |
bool | anisoP () const |
Is anisotropy used? More... | |
const Real | anisoFactor () const |
Anisotropy factor. More... | |
int | tDir () const |
Anisotropic direction. More... | |
const Set & | getSet () const |
Return the set on which the gauge action is defined. More... | |
void | staple (LatticeColorMatrix &result, const Handle< GaugeState< P, Q > > &state, int mu, int cb) const |
Compute staple. More... | |
void | deriv (multi1d< LatticeColorMatrix > &result, const Handle< GaugeState< P, Q > > &state) const |
Compute dS/dU. More... | |
Double | S (const Handle< GaugeState< P, Q > > &state) const |
Compute the actions. More... | |
const CreateGaugeState< P, Q > & | getCreateState () const |
Produce a gauge create state object. More... | |
~AnisoSymTemporalGaugeAct () | |
Destructor is automatic. More... | |
const Real | getBeta (void) const |
const Real | getUS (void) const |
const Real | getUT (void) const |
Public Member Functions inherited from Chroma::LinearGaugeAction | |
virtual | ~LinearGaugeAction () |
Virtual destructor to help with cleanup;. More... | |
Public Member Functions inherited from Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~GaugeAction () |
Virtual destructor to help with cleanup;. 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... | |
Protected Member Functions | |
void | init (void) |
Private initializer. More... | |
void | operator= (const AnisoSymTemporalGaugeAct &a) |
Hide assignment. More... | |
Private Attributes | |
const Handle< CreateGaugeState< P, Q > > | cgs |
AnisoSymGaugeActParams | param |
Real | plaq_c_t |
Real | rect_c_t_2 |
Temporal anisotropic Symanzik improved gauge action.
Contains space-space plaquette and space space rectangle terms only. Useful for when one wants to split the spatial and temporal parts of the general Symanzik gauge action onto different timescales in an (R)HMC simulation.
Definition at line 36 of file aniso_sym_temporal_gaugeact.h.
typedef multi1d<LatticeColorMatrix> Chroma::AnisoSymTemporalGaugeAct::P |
Definition at line 40 of file aniso_sym_temporal_gaugeact.h.
typedef multi1d<LatticeColorMatrix> Chroma::AnisoSymTemporalGaugeAct::Q |
Definition at line 41 of file aniso_sym_temporal_gaugeact.h.
|
inline |
Read beta from a param struct.
Definition at line 44 of file aniso_sym_temporal_gaugeact.h.
References init().
|
inline |
Destructor is automatic.
Definition at line 84 of file aniso_sym_temporal_gaugeact.h.
|
inline |
Anisotropy factor.
Definition at line 52 of file aniso_sym_temporal_gaugeact.h.
References Chroma::AnisoSymGaugeActParams::aniso, param, and Chroma::AnisoParam_t::xi_0.
|
inline |
Is anisotropy used?
Definition at line 49 of file aniso_sym_temporal_gaugeact.h.
References Chroma::AnisoSymGaugeActParams::aniso, Chroma::AnisoParam_t::anisoP, and param.
|
virtual |
Compute dS/dU.
Reimplemented from Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 108 of file aniso_sym_temporal_gaugeact.cc.
References Chroma::AnisoSymGaugeActParams::aniso, Chroma::AnisoSym::deriv_part(), Chroma::END_CODE(), Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >::getGaugeBC(), mu, Nd, nu, param, plaq_c_t, rect_c_t_2, Chroma::START_CODE(), Chroma::state, Chroma::AnisoParam_t::t_dir, Chroma::zero, and Chroma::GaugeBC< P, Q >::zero().
|
inline |
Definition at line 87 of file aniso_sym_temporal_gaugeact.h.
References Chroma::AnisoSymGaugeActParams::beta, and param.
|
inlinevirtual |
Produce a gauge create state object.
Implements Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 81 of file aniso_sym_temporal_gaugeact.h.
References cgs.
|
inlinevirtual |
Return the set on which the gauge action is defined.
Defined on the even-off (red/black) set
Implements Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 59 of file aniso_sym_temporal_gaugeact.h.
|
inline |
Definition at line 89 of file aniso_sym_temporal_gaugeact.h.
References param, and Chroma::AnisoSymGaugeActParams::u_s.
|
inline |
Definition at line 91 of file aniso_sym_temporal_gaugeact.h.
References param, and Chroma::AnisoSymGaugeActParams::u_t.
|
protected |
Private initializer.
Definition at line 177 of file aniso_sym_temporal_gaugeact.cc.
References Chroma::AnisoSymGaugeActParams::aniso, Chroma::AnisoParam_t::anisoP, Chroma::AnisoSymGaugeActParams::beta, Chroma::END_CODE(), param, plaq_c_t, rect_c_t_2, Chroma::START_CODE(), Chroma::AnisoSymGaugeActParams::u_s, Chroma::AnisoSymGaugeActParams::u_t, and Chroma::AnisoParam_t::xi_0.
Referenced by AnisoSymTemporalGaugeAct().
|
inlineprotected |
Hide assignment.
Definition at line 98 of file aniso_sym_temporal_gaugeact.h.
|
virtual |
Compute the actions.
Compute action due to temporal \mu x 2\nu rectangles and plaquettes.
Implements Chroma::GaugeAction< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 45 of file aniso_sym_temporal_gaugeact.cc.
References Chroma::AnisoSymGaugeActParams::aniso, Chroma::END_CODE(), mu, Nd, nu, param, plaq_c_t, rect_c_t_2, Chroma::AnisoSym::S_part(), Chroma::START_CODE(), Chroma::state, Chroma::AnisoSymGaugeActParams::sub_zero, sum, Chroma::AnisoParam_t::t_dir, Chroma::AnisoSymGaugeActParams::use_subtraction, and Chroma::zero.
|
inlinevirtual |
Compute staple.
Default version. Derived class should override this if needed.
Implements Chroma::LinearGaugeAction.
Definition at line 63 of file aniso_sym_temporal_gaugeact.h.
|
inline |
Anisotropic direction.
Definition at line 55 of file aniso_sym_temporal_gaugeact.h.
References Chroma::AnisoSymGaugeActParams::aniso, param, and Chroma::AnisoParam_t::t_dir.
|
private |
Definition at line 101 of file aniso_sym_temporal_gaugeact.h.
Referenced by getCreateState().
|
private |
|
private |
Temporal plaquette coupling
Definition at line 103 of file aniso_sym_temporal_gaugeact.h.
|
private |
Temporal \mu x 2\nu rectangle coupling
Definition at line 104 of file aniso_sym_temporal_gaugeact.h.