CHROMA
Public Member Functions | Protected Member Functions | List of all members

Abstract class for all gauge action boundary conditions with Schroedinger BC. More...

#include <schroedinger_fermbc_w.h>

Inheritance diagram for Chroma::SchrFermBC:
Chroma::FermBC< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::BoundCond< P, Q > Chroma::SchrSFFermBC Chroma::SchrChromoMagFermBC Chroma::SchrCouplingFermBC Chroma::SchrDirichletFermBC Chroma::SchrNonPertFermBC Chroma::SchrTrivialFermBC

Public Member Functions

virtual ~SchrFermBC ()
 Virtual destructor to help with cleanup;. More...
 
virtual void modify (multi1d< LatticeColorMatrix > &u) const
 Modify U fields according to the fermion BC in place. More...
 
virtual void modifyF (LatticeFermion &psi) const
 Modify fermion fields in place. More...
 
virtual void modifyF (LatticeFermion &psi, const Subset &s) const
 Modify fermion fields in place under a subset. More...
 
virtual void modifyF (multi1d< LatticeFermion > &psi) const
 Modify fermion fields in place. More...
 
virtual void modifyF (multi1d< LatticeFermion > &psi, const Subset &s) const
 Modify fermion fields in place under a subset. More...
 
virtual void zero (multi1d< LatticeColorMatrix > &ds_u) const
 Zero some gauge-like field in place on the masked links. More...
 
bool nontrivialP () const
 Says if there are fermion non-trivial. More...
 
virtual int getDir () const =0
 Decay direction. More...
 
virtual int getDecayMin () const =0
 Starting slice in decay direction. More...
 
virtual int getDecayMax () const =0
 Ending slice in decay direction. More...
 
- Public Member Functions inherited from Chroma::FermBC< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >
virtual ~FermBC ()
 Virtual destructor to help with cleanup;. More...
 
- Public Member Functions inherited from Chroma::BoundCond< P, Q >
virtual ~BoundCond ()
 Virtual destructor to help with cleanup;. More...
 

Protected Member Functions

virtual const LatticeBoolean & lSFmaskF () const =0
 Mask which lattice sites have fixed fermion fields. More...
 
virtual const multi1d< LatticeBoolean > & lSFmask () const =0
 Mask which lattice sites have fixed gauge links. More...
 
virtual const multi1d< LatticeColorMatrix > & SFBndFld () const =0
 Fixed gauge links on only the lSFmask() sites. More...
 
virtual int getMaxExtent () const =0
 Maximum plaquette size. This is what knows about 1x1 plaq or 1x2 rect. More...
 

Detailed Description

Abstract class for all gauge action boundary conditions with Schroedinger BC.

Schroedinger BC implies periodic in dirs orthog to decay dir, and some kind of fixed BC in the decay dir.

Definition at line 20 of file schroedinger_fermbc_w.h.

Constructor & Destructor Documentation

◆ ~SchrFermBC()

virtual Chroma::SchrFermBC::~SchrFermBC ( )
inlinevirtual

Virtual destructor to help with cleanup;.

Definition at line 26 of file schroedinger_fermbc_w.h.

Member Function Documentation

◆ getDecayMax()

virtual int Chroma::SchrFermBC::getDecayMax ( ) const
pure virtual

◆ getDecayMin()

virtual int Chroma::SchrFermBC::getDecayMin ( ) const
pure virtual

◆ getDir()

virtual int Chroma::SchrFermBC::getDir ( ) const
pure virtual

◆ getMaxExtent()

virtual int Chroma::SchrFermBC::getMaxExtent ( ) const
protectedpure virtual

Maximum plaquette size. This is what knows about 1x1 plaq or 1x2 rect.

Returns
1 for 1x1 plaq or 2 for 1x2 rect in decay_dir

Implemented in Chroma::SchrSFFermBC, Chroma::SchrTrivialFermBC, Chroma::SchrNonPertFermBC, Chroma::SchrDirichletFermBC, Chroma::SchrCouplingFermBC, and Chroma::SchrChromoMagFermBC.

◆ lSFmask()

virtual const multi1d<LatticeBoolean>& Chroma::SchrFermBC::lSFmask ( ) const
protectedpure virtual

◆ lSFmaskF()

virtual const LatticeBoolean& Chroma::SchrFermBC::lSFmaskF ( ) const
protectedpure virtual

◆ modify()

virtual void Chroma::SchrFermBC::modify ( multi1d< LatticeColorMatrix > &  u) const
inlinevirtual

◆ modifyF() [1/4]

virtual void Chroma::SchrFermBC::modifyF ( LatticeFermion &  psi) const
inlinevirtual

◆ modifyF() [2/4]

virtual void Chroma::SchrFermBC::modifyF ( LatticeFermion &  psi,
const Subset &  s 
) const
inlinevirtual

◆ modifyF() [3/4]

virtual void Chroma::SchrFermBC::modifyF ( multi1d< LatticeFermion > &  psi) const
inlinevirtual

◆ modifyF() [4/4]

virtual void Chroma::SchrFermBC::modifyF ( multi1d< LatticeFermion > &  psi,
const Subset &  s 
) const
inlinevirtual

Modify fermion fields in place under a subset.

Implements Chroma::FermBC< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

Definition at line 69 of file schroedinger_fermbc_w.h.

References Chroma::QDP_error_exit().

◆ nontrivialP()

bool Chroma::SchrFermBC::nontrivialP ( ) const
inlinevirtual

Says if there are fermion non-trivial.

Implements Chroma::FermBC< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

Definition at line 89 of file schroedinger_fermbc_w.h.

◆ SFBndFld()

virtual const multi1d<LatticeColorMatrix>& Chroma::SchrFermBC::SFBndFld ( ) const
protectedpure virtual

◆ zero()

virtual void Chroma::SchrFermBC::zero ( multi1d< LatticeColorMatrix > &  ds_u) const
inlinevirtual

Zero some gauge-like field in place on the masked links.

Implements Chroma::FermBC< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

Definition at line 76 of file schroedinger_fermbc_w.h.

References copymask(), Chroma::END_CODE(), lSFmask(), mu, Chroma::START_CODE(), z, and Chroma::zero.


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