Grid 0.7.0
WilsonTMFermion< Impl > Class Template Referenceabstract

#include <WilsonTMFermion.h>

Inheritance diagram for WilsonTMFermion< Impl >:
WilsonFermion< Impl > WilsonKernels< Impl > WilsonFermionStatic FermionOperator< Impl > WilsonKernelsStatic CheckerBoardedSparseMatrixBase< Impl::FermionField > SparseMatrixBase< Impl::FermionField >

Public Types

typedef WilsonKernels< Impl > Kernels
typedef FermionOperator< Impl > Base
typedef AcceleratorVector< int, STENCIL_MAXStencilVector
enum  { OptGeneric , OptHandUnroll , OptInlineAsm }
enum  { CommsAndCompute , CommsThenCompute }

Public Member Functions

 INHERIT_IMPL_TYPES (Impl)
virtual void Instantiatable (void)
 WilsonTMFermion (GaugeField &_Umu, GridCartesian &Fgrid, GridRedBlackCartesian &Hgrid, RealD _mass, RealD _mu, const ImplParams &p=ImplParams())
virtual void Mooee (const FermionField &in, FermionField &out)
virtual void MooeeDag (const FermionField &in, FermionField &out)
virtual void MooeeInv (const FermionField &in, FermionField &out)
virtual void MooeeInvDag (const FermionField &in, FermionField &out)
virtual void M (const FermionField &in, FermionField &out)
virtual void Mdag (const FermionField &in, FermionField &out)
GridBaseGaugeGrid (void)
GridBaseGaugeRedBlackGrid (void)
GridBaseFermionGrid (void)
GridBaseFermionRedBlackGrid (void)
FermionField & tmp (void)
virtual void M (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void Mdag (const Impl::FermionField &in, Impl::FermionField &out)=0
void Meooe (const FermionField &in, FermionField &out)
virtual void Meooe (const Impl::FermionField &in, Impl::FermionField &out)=0
void MeooeDag (const FermionField &in, FermionField &out)
virtual void MeooeDag (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void Mooee (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void MooeeDag (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void MooeeInv (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void MooeeInvDag (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void MomentumSpacePropagator (FermionField &out, const FermionField &in, RealD _mass, std::vector< double > twist)
void DhopDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
void DhopDerivOE (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
void DhopDerivEO (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
void Dhop (const FermionField &in, FermionField &out, int dag)
void DhopOE (const FermionField &in, FermionField &out, int dag)
void DhopEO (const FermionField &in, FermionField &out, int dag)
void Mdir (const FermionField &in, FermionField &out, int dir, int disp)
virtual void Mdir (const Impl::FermionField &in, Impl::FermionField &out, int dir, int disp)=0
void MdirAll (const FermionField &in, std::vector< FermionField > &out)
virtual void MdirAll (const Impl::FermionField &in, std::vector< Impl::FermionField > &out)=0
void DhopDir (const FermionField &in, FermionField &out, int dir, int disp)
void DhopDirAll (const FermionField &in, std::vector< FermionField > &out)
void DhopDirCalc (const FermionField &in, FermionField &out, int dirdisp, int gamma, int dag)
void DerivInternal (StencilImpl &st, DoubledGaugeField &U, GaugeField &mat, const FermionField &A, const FermionField &B, int dag)
void DhopInternal (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag)
void DhopInternalSerial (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag)
void DhopInternalOverlappedComms (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag)
void ImportGauge (const GaugeField &_Umu)
virtual RealD Mass (void)
virtual int isTrivialEE (void)
void SloppyComms (int sloppy)
void ContractConservedCurrent (PropagatorField &q_in_1, PropagatorField &q_in_2, PropagatorField &q_out, PropagatorField &phys_src, Current curr_type, unsigned int mu)
void SeqConservedCurrent (PropagatorField &q_in, PropagatorField &q_out, PropagatorField &phys_src, Current curr_type, unsigned int mu, unsigned int tmin, unsigned int tmax, ComplexField &lattice_cmplx)
virtual void DirichletBlock (const Coordinate &_Block)
GridBaseGrid (void)
GridBaseRedBlackGrid (void)
virtual void MDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
virtual void MoeDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
virtual void MeoDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
virtual void MooDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
virtual void MeeDeriv (GaugeField &mat, const FermionField &U, const FermionField &V, int dag)
virtual void Mdiag (const FermionField &in, FermionField &out)
virtual void Mdiag (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void FreePropagator (const FermionField &in, FermionField &out, RealD mass, std::vector< Complex > boundary, std::vector< double > twist)
virtual void FreePropagator (const FermionField &in, FermionField &out, RealD mass)
virtual void ContractJ5q (FermionField &q_in, ComplexField &J5q)
virtual void ContractJ5q (PropagatorField &q_in, ComplexField &J5q)
virtual void Dminus (const FermionField &psi, FermionField &chi)
virtual void DminusDag (const FermionField &psi, FermionField &chi)
virtual void ImportPhysicalFermionSource (const FermionField &input, FermionField &imported)
virtual void ImportUnphysicalFermion (const FermionField &input, FermionField &imported)
virtual void ExportPhysicalFermionSolution (const FermionField &solution, FermionField &exported)
virtual void ExportPhysicalFermionSource (const FermionField &solution, FermionField &exported)
virtual int ConstEE (void)
virtual void MdagM (const Impl::FermionField &in, Impl::FermionField &out)
virtual void MMdag (const Impl::FermionField &in, Impl::FermionField &out)

Static Public Member Functions

static void DhopDirAll (StencilImpl &st, DoubledGaugeField &U, SiteHalfSpinor *buf, int Ls, int Nsite, const FermionField &in, std::vector< FermionField > &out)
static void DhopKernel (int Opt, StencilImpl &st, DoubledGaugeField &U, SiteHalfSpinor *buf, int Ls, int Nsite, const FermionField &in, FermionField &out, int interior=1, int exterior=1)
static void DhopKernel (int Opt, StencilImpl &st, DoubledGaugeField &U, SiteHalfSpinor *buf, int Ls, int Nsite, const FermionField &in, FermionField &out, uint64_t *ids)
static void DhopDagKernel (int Opt, StencilImpl &st, DoubledGaugeField &U, SiteHalfSpinor *buf, int Ls, int Nsite, const FermionField &in, FermionField &out, int interior=1, int exterior=1)
static void DhopDirKernel (StencilImpl &st, DoubledGaugeField &U, SiteHalfSpinor *buf, int Ls, int Nsite, const FermionField &in, FermionField &out, int dirdisp, int gamma)

Data Fields

FermionField _tmp
RealD mass
RealD diag_mass
GridBase_grid
GridBase_cbgrid
StencilImpl Stencil
StencilImpl StencilEven
StencilImpl StencilOdd
DoubledGaugeField Umu
DoubledGaugeField UmuEven
DoubledGaugeField UmuOdd
WilsonAnisotropyCoefficients anisotropyCoeff

Static Public Attributes

static int Opt
static int Comms
static int HandOptDslash
static int MortonOrder
static const std::vector< int > directions
static const std::vector< int > displacements
static const int npoint

Static Private Member Functions

static accelerator_inline void DhopDirK (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp, int gamma)
static accelerator_inline void DhopDirXp (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirYp (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirZp (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirTp (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirXm (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirYm (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirZm (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator_inline void DhopDirTm (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dirdisp)
static accelerator void GenericDhopSite (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void GenericDhopSiteDag (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void GenericDhopSiteInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void GenericDhopSiteDagInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void GenericDhopSiteExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void GenericDhopSiteDagExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSite (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSiteDag (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSiteInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSiteDagInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSiteExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static void AsmDhopSiteDagExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, int Ls, int Nsite, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSite (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSiteDag (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSiteInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSiteDagInt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSiteExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)
static accelerator void HandDhopSiteDagExt (StencilView &st, DoubledGaugeFieldView &U, SiteHalfSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out)

Private Attributes

RealD mu

Detailed Description

template<class Impl>
class WilsonTMFermion< Impl >

Definition at line 36 of file WilsonTMFermion.h.

Member Typedef Documentation

◆ Kernels

template<class Impl>
typedef WilsonKernels<Impl> WilsonFermion< Impl >::Kernels
inherited

Definition at line 64 of file WilsonFermion.h.

◆ Base

template<class Impl>
typedef FermionOperator<Impl> WilsonKernels< Impl >::Base
inherited

Definition at line 51 of file WilsonKernels.h.

◆ StencilVector

template<class Impl>
typedef AcceleratorVector<int,STENCIL_MAX> WilsonKernels< Impl >::StencilVector
inherited

Definition at line 52 of file WilsonKernels.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited
Enumerator
OptGeneric 
OptHandUnroll 
OptInlineAsm 

Definition at line 41 of file WilsonKernels.h.

◆ anonymous enum

anonymous enum
inherited
Enumerator
CommsAndCompute 
CommsThenCompute 

Definition at line 42 of file WilsonKernels.h.

Constructor & Destructor Documentation

◆ WilsonTMFermion()

template<class Impl>
WilsonTMFermion< Impl >::WilsonTMFermion ( GaugeField & _Umu,
GridCartesian & Fgrid,
GridRedBlackCartesian & Hgrid,
RealD _mass,
RealD _mu,
const ImplParams & p = ImplParams() )
inline

Definition at line 44 of file WilsonTMFermion.h.

Member Function Documentation

◆ INHERIT_IMPL_TYPES()

template<class Impl>
WilsonTMFermion< Impl >::INHERIT_IMPL_TYPES ( Impl )

◆ Instantiatable()

template<class Impl>
virtual void WilsonTMFermion< Impl >::Instantiatable ( void )
inlinevirtual

Definition at line 42 of file WilsonTMFermion.h.

◆ Mooee() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::Mooee ( const FermionField & in,
FermionField & out )
virtual

Reimplemented from WilsonFermion< Impl >.

Definition at line 63 of file WilsonTMFermionImplementation.h.

References axpibg5x(), WilsonFermion< Impl >::mass, and mu.

◆ MooeeDag() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::MooeeDag ( const FermionField & in,
FermionField & out )
virtual

Reimplemented from WilsonFermion< Impl >.

Definition at line 70 of file WilsonTMFermionImplementation.h.

References axpibg5x(), WilsonFermion< Impl >::mass, and mu.

◆ MooeeInv() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::MooeeInv ( const FermionField & in,
FermionField & out )
virtual

Reimplemented from WilsonFermion< Impl >.

Definition at line 77 of file WilsonTMFermionImplementation.h.

References axpibg5x(), WilsonFermion< Impl >::mass, and mu.

◆ MooeeInvDag() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::MooeeInvDag ( const FermionField & in,
FermionField & out )
virtual

Reimplemented from WilsonFermion< Impl >.

Definition at line 87 of file WilsonTMFermionImplementation.h.

References axpibg5x(), WilsonFermion< Impl >::mass, and mu.

◆ M() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::M ( const FermionField & in,
FermionField & out )
virtual

◆ Mdag() [1/2]

template<class Impl>
void WilsonTMFermion< Impl >::Mdag ( const FermionField & in,
FermionField & out )
virtual

◆ GaugeGrid()

template<class Impl>
GridBase * WilsonFermion< Impl >::GaugeGrid ( void )
inlinevirtualinherited

Implements FermionOperator< Impl >.

Definition at line 69 of file WilsonFermion.h.

Referenced by ContractConservedCurrent(), and SeqConservedCurrent().

◆ GaugeRedBlackGrid()

template<class Impl>
GridBase * WilsonFermion< Impl >::GaugeRedBlackGrid ( void )
inlinevirtualinherited

Implements FermionOperator< Impl >.

Definition at line 70 of file WilsonFermion.h.

◆ FermionGrid()

template<class Impl>
GridBase * WilsonFermion< Impl >::FermionGrid ( void )
inlinevirtualinherited

Implements FermionOperator< Impl >.

Definition at line 71 of file WilsonFermion.h.

◆ FermionRedBlackGrid()

template<class Impl>
GridBase * WilsonFermion< Impl >::FermionRedBlackGrid ( void )
inlinevirtualinherited

Implements FermionOperator< Impl >.

Definition at line 72 of file WilsonFermion.h.

◆ tmp()

template<class Impl>
FermionField & WilsonFermion< Impl >::tmp ( void )
inlinevirtualinherited

◆ M() [2/2]

virtual void SparseMatrixBase< Impl::FermionField >::M ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ Mdag() [2/2]

virtual void SparseMatrixBase< Impl::FermionField >::Mdag ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ Meooe() [1/2]

template<class Impl>
void WilsonFermion< Impl >::Meooe ( const FermionField & in,
FermionField & out )
virtualinherited

◆ Meooe() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::Meooe ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ MeooeDag() [1/2]

template<class Impl>
void WilsonFermion< Impl >::MeooeDag ( const FermionField & in,
FermionField & out )
virtualinherited

◆ MeooeDag() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::MeooeDag ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ Mooee() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::Mooee ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ MooeeDag() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::MooeeDag ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ MooeeInv() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::MooeeInv ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ MooeeInvDag() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::MooeeInvDag ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ MomentumSpacePropagator()

template<class Impl>
void WilsonFermion< Impl >::MomentumSpacePropagator ( FermionField & out,
const FermionField & in,
RealD _mass,
std::vector< double > twist )
virtualinherited

Reimplemented from FermionOperator< Impl >.

Definition at line 173 of file WilsonFermionImplementation.h.

References _grid, and conformable().

◆ DhopDeriv()

template<class Impl>
void WilsonFermion< Impl >::DhopDeriv ( GaugeField & mat,
const FermionField & U,
const FermionField & V,
int dag )
virtualinherited

◆ DhopDerivOE()

template<class Impl>
void WilsonFermion< Impl >::DhopDerivOE ( GaugeField & mat,
const FermionField & U,
const FermionField & V,
int dag )
virtualinherited

◆ DhopDerivEO()

template<class Impl>
void WilsonFermion< Impl >::DhopDerivEO ( GaugeField & mat,
const FermionField & U,
const FermionField & V,
int dag )
virtualinherited

◆ Dhop()

◆ DhopOE()

template<class Impl>
void WilsonFermion< Impl >::DhopOE ( const FermionField & in,
FermionField & out,
int dag )
virtualinherited

◆ DhopEO()

template<class Impl>
void WilsonFermion< Impl >::DhopEO ( const FermionField & in,
FermionField & out,
int dag )
virtualinherited

◆ Mdir() [1/2]

template<class Impl>
void WilsonFermion< Impl >::Mdir ( const FermionField & in,
FermionField & out,
int dir,
int disp )
virtualinherited

Implements FermionOperator< Impl >.

Definition at line 340 of file WilsonFermionImplementation.h.

References DhopDir().

◆ Mdir() [2/2]

virtual void SparseMatrixBase< Impl::FermionField >::Mdir ( const Impl::FermionField & in,
Impl::FermionField & out,
int dir,
int disp )
pure virtualinherited

◆ MdirAll() [1/2]

template<class Impl>
void WilsonFermion< Impl >::MdirAll ( const FermionField & in,
std::vector< FermionField > & out )
virtualinherited

Implements FermionOperator< Impl >.

Definition at line 345 of file WilsonFermionImplementation.h.

References DhopDirAll().

◆ MdirAll() [2/2]

virtual void SparseMatrixBase< Impl::FermionField >::MdirAll ( const Impl::FermionField & in,
std::vector< Impl::FermionField > & out )
pure virtualinherited

◆ DhopDir()

template<class Impl>
void WilsonFermion< Impl >::DhopDir ( const FermionField & in,
FermionField & out,
int dir,
int disp )
virtualinherited

◆ DhopDirAll() [1/2]

template<class Impl>
void WilsonFermion< Impl >::DhopDirAll ( const FermionField & in,
std::vector< FermionField > & out )
inherited

◆ DhopDirAll() [2/2]

template<class Impl>
void WilsonKernels< Impl >::DhopDirAll ( StencilImpl & st,
DoubledGaugeField & U,
SiteHalfSpinor * buf,
int Ls,
int Nsite,
const FermionField & in,
std::vector< FermionField > & out )
staticinherited

◆ DhopDirCalc()

template<class Impl>
void WilsonFermion< Impl >::DhopDirCalc ( const FermionField & in,
FermionField & out,
int dirdisp,
int gamma,
int dag )
inherited

Definition at line 381 of file WilsonFermionImplementation.h.

References WilsonKernels< Impl >::DhopDirKernel(), Stencil, and Umu.

Referenced by DhopDir(), and DhopDirAll().

◆ DerivInternal()

template<class Impl>
void WilsonFermion< Impl >::DerivInternal ( StencilImpl & st,
DoubledGaugeField & U,
GaugeField & mat,
const FermionField & A,
const FermionField & B,
int dag )
inherited

◆ DhopInternal()

template<class Impl>
void WilsonFermion< Impl >::DhopInternal ( StencilImpl & st,
DoubledGaugeField & U,
const FermionField & in,
FermionField & out,
int dag )
inherited

◆ DhopInternalSerial()

template<class Impl>
void WilsonFermion< Impl >::DhopInternalSerial ( StencilImpl & st,
DoubledGaugeField & U,
const FermionField & in,
FermionField & out,
int dag )
inherited

◆ DhopInternalOverlappedComms()

template<class Impl>
void WilsonFermion< Impl >::DhopInternalOverlappedComms ( StencilImpl & st,
DoubledGaugeField & U,
const FermionField & in,
FermionField & out,
int dag )
inherited

◆ ImportGauge()

template<class Impl>
void WilsonFermion< Impl >::ImportGauge ( const GaugeField & _Umu)
virtualinherited

◆ Mass()

template<class Impl>
virtual RealD WilsonFermion< Impl >::Mass ( void )
inlinevirtualinherited

Reimplemented from CheckerBoardedSparseMatrixBase< Impl::FermionField >.

Definition at line 156 of file WilsonFermion.h.

◆ isTrivialEE()

◆ SloppyComms()

template<class Impl>
void WilsonFermion< Impl >::SloppyComms ( int sloppy)
inlineinherited

Definition at line 168 of file WilsonFermion.h.

◆ ContractConservedCurrent()

template<class Impl>
void WilsonFermion< Impl >::ContractConservedCurrent ( PropagatorField & q_in_1,
PropagatorField & q_in_2,
PropagatorField & q_out,
PropagatorField & phys_src,
Current curr_type,
unsigned int mu )
virtualinherited

Reimplemented from FermionOperator< Impl >.

Definition at line 502 of file WilsonFermionImplementation.h.

References _grid, adj(), conformable(), Cshift(), GaugeGrid(), GridLogError, and Umu.

◆ SeqConservedCurrent()

template<class Impl>
void WilsonFermion< Impl >::SeqConservedCurrent ( PropagatorField & q_in,
PropagatorField & q_out,
PropagatorField & phys_src,
Current curr_type,
unsigned int mu,
unsigned int tmin,
unsigned int tmax,
ComplexField & lattice_cmplx )
virtualinherited

◆ DhopKernel() [1/2]

◆ DhopKernel() [2/2]

template<class Impl>
void WilsonKernels< Impl >::DhopKernel ( int Opt,
StencilImpl & st,
DoubledGaugeField & U,
SiteHalfSpinor * buf,
int Ls,
int Nsite,
const FermionField & in,
FermionField & out,
uint64_t * ids )
staticinherited

◆ DhopDagKernel()

◆ DhopDirKernel()

template<class Impl>
void WilsonKernels< Impl >::DhopDirKernel ( StencilImpl & st,
DoubledGaugeField & U,
SiteHalfSpinor * buf,
int Ls,
int Nsite,
const FermionField & in,
FermionField & out,
int dirdisp,
int gamma )
staticinherited

◆ DhopDirK()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirK ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp,
int gamma )
staticprivateinherited

◆ DhopDirXp()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirXp ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirYp()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirYp ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirZp()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirZp ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirTp()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirTp ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirXm()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirXm ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirYm()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirYm ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirZm()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirZm ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator_inline, and U.

Referenced by DhopDirAll().

◆ DhopDirTm()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::DhopDirTm ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dirdisp )
staticprivateinherited

References accelerator, accelerator_inline, and U.

Referenced by DhopDirAll().

◆ GenericDhopSite()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSite ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ GenericDhopSiteDag()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSiteDag ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ GenericDhopSiteInt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSiteInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ GenericDhopSiteDagInt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSiteDagInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ GenericDhopSiteExt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSiteExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ GenericDhopSiteDagExt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::GenericDhopSiteDagExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ AsmDhopSite()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSite ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 44 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopKernel().

◆ AsmDhopSiteDag()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSiteDag ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 51 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopDagKernel().

◆ AsmDhopSiteInt()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSiteInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 58 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopKernel().

◆ AsmDhopSiteDagInt()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSiteDagInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 65 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopDagKernel().

◆ AsmDhopSiteExt()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSiteExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 72 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopKernel().

◆ AsmDhopSiteDagExt()

template<class Impl>
void WilsonKernels< Impl >::AsmDhopSiteDagExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
int Ls,
int Nsite,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

Definition at line 79 of file WilsonKernelsAsmImplementation.h.

References Ns, and U.

Referenced by DhopDagKernel().

◆ HandDhopSite()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSite ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ HandDhopSiteDag()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSiteDag ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ HandDhopSiteInt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSiteInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ HandDhopSiteDagInt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSiteDagInt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ HandDhopSiteExt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSiteExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ HandDhopSiteDagExt()

template<class Impl>
accelerator_inline void WilsonKernels< Impl >::HandDhopSiteDagExt ( StencilView & st,
DoubledGaugeFieldView & U,
SiteHalfSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out )
staticprivateinherited

◆ DirichletBlock()

template<class Impl>
virtual void FermionOperator< Impl >::DirichletBlock ( const Coordinate & _Block)
inlinevirtualinherited

◆ Grid()

template<class Impl>
GridBase * FermionOperator< Impl >::Grid ( void )
inlinevirtualinherited

Implements SparseMatrixBase< Impl::FermionField >.

Definition at line 54 of file FermionOperator.h.

References FermionGrid().

◆ RedBlackGrid()

template<class Impl>
GridBase * FermionOperator< Impl >::RedBlackGrid ( void )
inlinevirtualinherited

◆ MDeriv()

◆ MoeDeriv()

template<class Impl>
virtual void FermionOperator< Impl >::MoeDeriv ( GaugeField & mat,
const FermionField & U,
const FermionField & V,
int dag )
inlinevirtualinherited

◆ MeoDeriv()

template<class Impl>
virtual void FermionOperator< Impl >::MeoDeriv ( GaugeField & mat,
const FermionField & U,
const FermionField & V,
int dag )
inlinevirtualinherited

◆ MooDeriv()

◆ MeeDeriv()

◆ Mdiag() [1/2]

template<class Impl>
virtual void FermionOperator< Impl >::Mdiag ( const FermionField & in,
FermionField & out )
inlinevirtualinherited

Definition at line 91 of file FermionOperator.h.

References Mooee().

◆ Mdiag() [2/2]

virtual void SparseMatrixBase< Impl::FermionField >::Mdiag ( const Impl::FermionField & in,
Impl::FermionField & out )
pure virtualinherited

◆ FreePropagator() [1/2]

◆ FreePropagator() [2/2]

◆ ContractJ5q() [1/2]

template<class Impl>
virtual void FermionOperator< Impl >::ContractJ5q ( FermionField & q_in,
ComplexField & J5q )
inlinevirtualinherited

Reimplemented in CayleyFermion5D< Impl >.

Definition at line 168 of file FermionOperator.h.

◆ ContractJ5q() [2/2]

template<class Impl>
virtual void FermionOperator< Impl >::ContractJ5q ( PropagatorField & q_in,
ComplexField & J5q )
inlinevirtualinherited

Reimplemented in CayleyFermion5D< Impl >.

Definition at line 169 of file FermionOperator.h.

◆ Dminus()

template<class Impl>
virtual void FermionOperator< Impl >::Dminus ( const FermionField & psi,
FermionField & chi )
inlinevirtualinherited

◆ DminusDag()

template<class Impl>
virtual void FermionOperator< Impl >::DminusDag ( const FermionField & psi,
FermionField & chi )
inlinevirtualinherited

◆ ImportPhysicalFermionSource()

template<class Impl>
virtual void FermionOperator< Impl >::ImportPhysicalFermionSource ( const FermionField & input,
FermionField & imported )
inlinevirtualinherited

◆ ImportUnphysicalFermion()

template<class Impl>
virtual void FermionOperator< Impl >::ImportUnphysicalFermion ( const FermionField & input,
FermionField & imported )
inlinevirtualinherited

◆ ExportPhysicalFermionSolution()

template<class Impl>
virtual void FermionOperator< Impl >::ExportPhysicalFermionSolution ( const FermionField & solution,
FermionField & exported )
inlinevirtualinherited

◆ ExportPhysicalFermionSource()

template<class Impl>
virtual void FermionOperator< Impl >::ExportPhysicalFermionSource ( const FermionField & solution,
FermionField & exported )
inlinevirtualinherited

◆ ConstEE()

◆ MdagM()

virtual void SparseMatrixBase< Impl::FermionField >::MdagM ( const Impl::FermionField & in,
Impl::FermionField & out )
inlinevirtualinherited

Definition at line 43 of file SparseMatrix.h.

◆ MMdag()

virtual void SparseMatrixBase< Impl::FermionField >::MMdag ( const Impl::FermionField & in,
Impl::FermionField & out )
inlinevirtualinherited

Definition at line 48 of file SparseMatrix.h.

Field Documentation

◆ mu

template<class Impl>
RealD WilsonTMFermion< Impl >::mu
private

Definition at line 70 of file WilsonTMFermion.h.

Referenced by M(), Mdag(), Mooee(), MooeeDag(), MooeeInv(), and MooeeInvDag().

◆ _tmp

template<class Impl>
FermionField WilsonFermion< Impl >::_tmp
inherited

Definition at line 74 of file WilsonFermion.h.

Referenced by WilsonFermion().

◆ mass

◆ diag_mass

template<class Impl>
RealD WilsonFermion< Impl >::diag_mass
inherited

◆ _grid

template<class Impl>
GridBase* WilsonFermion< Impl >::_grid
inherited

◆ _cbgrid

template<class Impl>
GridBase* WilsonFermion< Impl >::_cbgrid
inherited

Definition at line 162 of file WilsonFermion.h.

Referenced by DhopDerivEO(), DhopDerivOE(), DhopEO(), DhopOE(), and WilsonFermion().

◆ Stencil

template<class Impl>
StencilImpl WilsonFermion< Impl >::Stencil
inherited

Definition at line 165 of file WilsonFermion.h.

Referenced by Dhop(), DhopDeriv(), DhopDir(), DhopDirAll(), DhopDirCalc(), and WilsonFermion().

◆ StencilEven

template<class Impl>
StencilImpl WilsonFermion< Impl >::StencilEven
inherited

Definition at line 166 of file WilsonFermion.h.

Referenced by DhopDerivOE(), DhopOE(), and WilsonFermion().

◆ StencilOdd

template<class Impl>
StencilImpl WilsonFermion< Impl >::StencilOdd
inherited

Definition at line 167 of file WilsonFermion.h.

Referenced by DhopDerivEO(), DhopEO(), and WilsonFermion().

◆ Umu

◆ UmuEven

template<class Impl>
DoubledGaugeField WilsonFermion< Impl >::UmuEven
inherited

Definition at line 177 of file WilsonFermion.h.

Referenced by DhopDerivEO(), DhopEO(), and WilsonFermion().

◆ UmuOdd

template<class Impl>
DoubledGaugeField WilsonFermion< Impl >::UmuOdd
inherited

Definition at line 178 of file WilsonFermion.h.

Referenced by DhopDerivOE(), DhopOE(), and WilsonFermion().

◆ anisotropyCoeff

template<class Impl>
WilsonAnisotropyCoefficients WilsonFermion< Impl >::anisotropyCoeff
inherited

Definition at line 180 of file WilsonFermion.h.

Referenced by ImportGauge(), and WilsonFermion().

◆ Opt

◆ Comms

int WilsonKernelsStatic::Comms
staticinherited

◆ HandOptDslash

int WilsonFermionStatic::HandOptDslash
staticinherited

Definition at line 37 of file WilsonFermion.h.

◆ MortonOrder

int WilsonFermionStatic::MortonOrder
staticinherited

Definition at line 38 of file WilsonFermion.h.

◆ directions

const std::vector< int > WilsonFermionStatic::directions
staticinherited

Definition at line 39 of file WilsonFermion.h.

Referenced by WilsonFermion< Impl >::WilsonFermion().

◆ displacements

const std::vector< int > WilsonFermionStatic::displacements
staticinherited

Definition at line 40 of file WilsonFermion.h.

Referenced by WilsonFermion< Impl >::WilsonFermion().

◆ npoint

const int WilsonFermionStatic::npoint
staticinherited

Definition at line 41 of file WilsonFermion.h.

Referenced by WilsonFermion< Impl >::WilsonFermion().


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