6 #ifndef __schroedinger_fermbc_w_h__
7 #define __schroedinger_fermbc_w_h__
21 multi1d<LatticeColorMatrix>,
22 multi1d<LatticeColorMatrix> >
29 virtual void modify(multi1d<LatticeColorMatrix>&
u)
const
33 for(
int mu=0;
mu <
u.size(); ++
mu)
51 const Subset&
s)
const
70 const Subset&
s)
const
76 virtual void zero(multi1d<LatticeColorMatrix>& ds_u)
const
82 for(
int mu=0;
mu < ds_u.size(); ++
mu)
102 virtual const LatticeBoolean&
lSFmaskF()
const = 0;
105 virtual const multi1d<LatticeBoolean>&
lSFmask()
const = 0;
108 virtual const multi1d<LatticeColorMatrix>&
SFBndFld()
const = 0;
Base class for all fermion action boundary conditions.
Abstract class for all gauge action boundary conditions with Schroedinger BC.
virtual int getDir() const =0
Decay direction.
virtual void modifyF(multi1d< LatticeFermion > &psi) const
Modify fermion fields in place.
virtual const multi1d< LatticeBoolean > & lSFmask() const =0
Mask which lattice sites have fixed gauge links.
virtual void zero(multi1d< LatticeColorMatrix > &ds_u) const
Zero some gauge-like field in place on the masked links.
bool nontrivialP() const
Says if there are fermion non-trivial.
virtual void modifyF(LatticeFermion &psi, const Subset &s) const
Modify fermion fields in place under a subset.
virtual void modifyF(LatticeFermion &psi) const
Modify fermion fields in place.
virtual void modify(multi1d< LatticeColorMatrix > &u) const
Modify U fields according to the fermion BC in place.
virtual ~SchrFermBC()
Virtual destructor to help with cleanup;.
virtual void modifyF(multi1d< LatticeFermion > &psi, const Subset &s) const
Modify fermion fields in place under a subset.
virtual int getDecayMin() const =0
Starting slice in decay direction.
virtual int getDecayMax() const =0
Ending slice in decay direction.
virtual int getMaxExtent() const =0
Maximum plaquette size. This is what knows about 1x1 plaq or 1x2 rect.
virtual const multi1d< LatticeColorMatrix > & SFBndFld() const =0
Fixed gauge links on only the lSFmask() sites.
virtual const LatticeBoolean & lSFmaskF() const =0
Mask which lattice sites have fixed fermion fields.
Fermion action boundary conditions.
Asqtad Staggered-Dirac operator.
QDP_error_exit("too many BiCG iterations", n_count, rsd_sq, cp, c, re_rvr, im_rvr, re_a, im_a, re_b, im_b)
static multi1d< LatticeColorMatrix > u
multi1d< LatticeFermion > s(Ncb)
copymask(lcoord, lbit, ltmp_1, REPLACE)