CHROMA
Public Member Functions | List of all members

Base class for all gauge action boundary conditions. More...

#include <gaugebc.h>

Inheritance diagram for Chroma::GaugeBC< P, Q >:
Chroma::BoundCond< P, Q > Chroma::PeriodicGaugeBC< P, Q > Chroma::SimpleGaugeBC< P, Q >

Public Member Functions

virtual ~GaugeBC ()
 Virtual destructor to help with cleanup;. More...
 
virtual void modify (Q &u) const =0
 Apply the BC onto the U fields in place. More...
 
virtual void zero (P &ds_u) const =0
 Zero some gauge-like field in place on the masked links. More...
 
virtual bool nontrivialP () const =0
 Says if there are fixed links within the lattice. More...
 
- Public Member Functions inherited from Chroma::BoundCond< P, Q >
virtual ~BoundCond ()
 Virtual destructor to help with cleanup;. More...
 

Detailed Description

template<typename P, typename Q>
class Chroma::GaugeBC< P, Q >

Base class for all gauge action boundary conditions.

NOTE: this class is specifically using LatticeColorMatrix, but probably should generalized to a template. The point is that coordinates and momenta within HMC are general. The FermAct classes have a param type (T,P) = (type of fermion, type of conjugate momenta) the latter part used in the deriv stuff. Here, the "zero" could be on any conjugate momenta. The modify, however, is usually on the coordinates which is often the LatticeColorMatrx. The FermBC has a template param for the fermion type that is used in the "modifyF", but is fixed for a LatticeColorMatrix in the "modifyU".

Definition at line 29 of file gaugebc.h.

Constructor & Destructor Documentation

◆ ~GaugeBC()

template<typename P , typename Q >
virtual Chroma::GaugeBC< P, Q >::~GaugeBC ( )
inlinevirtual

Virtual destructor to help with cleanup;.

Definition at line 33 of file gaugebc.h.

Member Function Documentation

◆ modify()

template<typename P , typename Q >
virtual void Chroma::GaugeBC< P, Q >::modify ( Q u) const
pure virtual

Apply the BC onto the U fields in place.

Implements Chroma::BoundCond< P, Q >.

Implemented in Chroma::SimpleGaugeBC< P, Q >, Chroma::PeriodicGaugeBC< P, Q >, Chroma::SchrGaugeBC, and Chroma::SchrSFZeroGaugeBC.

Referenced by Chroma::mciter().

◆ nontrivialP()

template<typename P , typename Q >
virtual bool Chroma::GaugeBC< P, Q >::nontrivialP ( ) const
pure virtual

Says if there are fixed links within the lattice.

Implements Chroma::BoundCond< P, Q >.

Implemented in Chroma::SimpleGaugeBC< P, Q >, Chroma::SchrGaugeBC, and Chroma::PeriodicGaugeBC< P, Q >.

◆ zero()

template<typename P , typename Q >
virtual void Chroma::GaugeBC< P, Q >::zero ( P ds_u) const
pure virtual

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