Grid 0.7.0
NaiveStaggeredFermion< Impl > Class Template Referenceabstract

#include <NaiveStaggeredFermion.h>

Inheritance diagram for NaiveStaggeredFermion< Impl >:
StaggeredKernels< Impl > NaiveStaggeredFermionStatic FermionOperator< Impl > StaggeredKernelsStatic CheckerBoardedSparseMatrixBase< Impl::FermionField > SparseMatrixBase< Impl::FermionField >

Public Types

typedef StaggeredKernels< Impl > Kernels
typedef FermionOperator< Impl > Base
enum  { OptGeneric , OptHandUnroll , OptInlineAsm }
enum  { CommsAndCompute , CommsThenCompute }

Public Member Functions

 INHERIT_IMPL_TYPES (Impl)
FermionField & tmp (void)
GridBaseGaugeGrid (void)
GridBaseGaugeRedBlackGrid (void)
GridBaseFermionGrid (void)
GridBaseFermionRedBlackGrid (void)
void M (const FermionField &in, FermionField &out)
void Mdag (const FermionField &in, FermionField &out)
void Meooe (const FermionField &in, FermionField &out)
void MeooeDag (const FermionField &in, FermionField &out)
void Mooee (const FermionField &in, FermionField &out)
void MooeeDag (const FermionField &in, FermionField &out)
void MooeeInv (const FermionField &in, FermionField &out)
void MooeeInvDag (const FermionField &in, FermionField &out)
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)
void MdirAll (const FermionField &in, std::vector< FermionField > &out)
void DhopDir (const FermionField &in, FermionField &out, int dir, int disp)
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 DhopInternalSerialComms (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag)
void DhopInternalOverlappedComms (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag)
 NaiveStaggeredFermion (GaugeField &_U, GridCartesian &Fgrid, GridRedBlackCartesian &Hgrid, RealD _mass, RealD _c1, RealD _u0, const ImplParams &p=ImplParams())
 NaiveStaggeredFermion (GridCartesian &Fgrid, GridRedBlackCartesian &Hgrid, RealD _mass, RealD _c1, RealD _u0, const ImplParams &p=ImplParams())
void ImportGauge (const GaugeField &_U)
DoubledGaugeField & GetU (void)
void CopyGaugeCheckerboards (void)
virtual int isTrivialEE (void)
virtual RealD Mass (void)
void SloppyComms (int sloppy)
void ContractConservedCurrent (PropagatorField &q_in_1, PropagatorField &q_in_2, PropagatorField &q_out, PropagatorField &src, Current curr_type, unsigned int mu)
void SeqConservedCurrent (PropagatorField &q_in, PropagatorField &q_out, PropagatorField &srct, Current curr_type, unsigned int mu, unsigned int tmin, unsigned int tmax, ComplexField &lattice_cmplx)
void DhopImproved (StencilImpl &st, DoubledGaugeField &U, DoubledGaugeField &UUU, const FermionField &in, FermionField &out, int dag, int interior, int exterior)
void DhopNaive (StencilImpl &st, DoubledGaugeField &U, const FermionField &in, FermionField &out, int dag, int interior, int exterior)
void DhopDirKernel (StencilImpl &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dir, int disp)
virtual void DirichletBlock (const Coordinate &_Block)
GridBaseGrid (void)
GridBaseRedBlackGrid (void)
virtual void M (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void Mdag (const Impl::FermionField &in, Impl::FermionField &out)=0
virtual void Meooe (const Impl::FermionField &in, Impl::FermionField &out)=0
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 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 Mdir (const Impl::FermionField &in, Impl::FermionField &out, int dir, int disp)=0
virtual void MdirAll (const Impl::FermionField &in, std::vector< Impl::FermionField > &out)=0
virtual void MomentumSpacePropagator (FermionField &out, const FermionField &in, RealD _m, std::vector< double > twist)
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)

Data Fields

FermionField _tmp
RealD mass
RealD u0
RealD c1
GridBase_grid
GridBase_cbgrid
StencilImpl Stencil
StencilImpl StencilEven
StencilImpl StencilOdd
DoubledGaugeField Umu
DoubledGaugeField UmuEven
DoubledGaugeField UmuOdd

Static Public Attributes

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

Protected Member Functions

void DhopSiteAsm (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
void DhopSiteAsm (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
void DhopSiteAsm (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int sF, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)

Static Protected Member Functions

template<int Naik>
static accelerator_inline void DhopSiteGeneric (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
template<int Naik>
static accelerator_inline void DhopSiteGenericInt (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
template<int Naik>
static accelerator_inline void DhopSiteGenericExt (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
template<int Naik>
static accelerator_inline void DhopSiteHand (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
template<int Naik>
static accelerator_inline void DhopSiteHandInt (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)
template<int Naik>
static accelerator_inline void DhopSiteHandExt (StencilView &st, DoubledGaugeFieldView &U, DoubledGaugeFieldView &UUU, SiteSpinor *buf, int LLs, int sU, const FermionFieldView &in, FermionFieldView &out, int dag)

Detailed Description

template<class Impl>
class NaiveStaggeredFermion< Impl >

Definition at line 42 of file NaiveStaggeredFermion.h.

Member Typedef Documentation

◆ Kernels

template<class Impl>
typedef StaggeredKernels<Impl> NaiveStaggeredFermion< Impl >::Kernels

Definition at line 45 of file NaiveStaggeredFermion.h.

◆ Base

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

Definition at line 48 of file StaggeredKernels.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited
Enumerator
OptGeneric 
OptHandUnroll 
OptInlineAsm 

Definition at line 38 of file StaggeredKernels.h.

◆ anonymous enum

anonymous enum
inherited
Enumerator
CommsAndCompute 
CommsThenCompute 

Definition at line 39 of file StaggeredKernels.h.

Constructor & Destructor Documentation

◆ NaiveStaggeredFermion() [1/2]

template<class Impl>
NaiveStaggeredFermion< Impl >::NaiveStaggeredFermion ( GaugeField & _U,
GridCartesian & Fgrid,
GridRedBlackCartesian & Hgrid,
RealD _mass,
RealD _c1,
RealD _u0,
const ImplParams & p = ImplParams() )

Definition at line 68 of file NaiveStaggeredFermionImplementation.h.

References ImportGauge(), and NaiveStaggeredFermion().

Referenced by NaiveStaggeredFermion().

◆ NaiveStaggeredFermion() [2/2]

template<class Impl>
NaiveStaggeredFermion< Impl >::NaiveStaggeredFermion ( GridCartesian & Fgrid,
GridRedBlackCartesian & Hgrid,
RealD _mass,
RealD _c1,
RealD _u0,
const ImplParams & p = ImplParams() )

Member Function Documentation

◆ INHERIT_IMPL_TYPES()

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

◆ tmp()

template<class Impl>
FermionField & NaiveStaggeredFermion< Impl >::tmp ( void )
inlinevirtual

Implements FermionOperator< Impl >.

Definition at line 48 of file NaiveStaggeredFermion.h.

◆ GaugeGrid()

template<class Impl>
GridBase * NaiveStaggeredFermion< Impl >::GaugeGrid ( void )
inlinevirtual

Implements FermionOperator< Impl >.

Definition at line 53 of file NaiveStaggeredFermion.h.

Referenced by ImportGauge().

◆ GaugeRedBlackGrid()

template<class Impl>
GridBase * NaiveStaggeredFermion< Impl >::GaugeRedBlackGrid ( void )
inlinevirtual

Implements FermionOperator< Impl >.

Definition at line 54 of file NaiveStaggeredFermion.h.

◆ FermionGrid()

template<class Impl>
GridBase * NaiveStaggeredFermion< Impl >::FermionGrid ( void )
inlinevirtual

Implements FermionOperator< Impl >.

Definition at line 55 of file NaiveStaggeredFermion.h.

◆ FermionRedBlackGrid()

template<class Impl>
GridBase * NaiveStaggeredFermion< Impl >::FermionRedBlackGrid ( void )
inlinevirtual

Implements FermionOperator< Impl >.

Definition at line 56 of file NaiveStaggeredFermion.h.

◆ M() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 129 of file NaiveStaggeredFermionImplementation.h.

References axpy(), DaggerNo, Dhop(), and mass.

◆ Mdag() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 136 of file NaiveStaggeredFermionImplementation.h.

References axpy(), DaggerYes, Dhop(), and mass.

◆ Meooe() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 143 of file NaiveStaggeredFermionImplementation.h.

References DaggerNo, DhopEO(), DhopOE(), and Odd.

◆ MeooeDag() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 151 of file NaiveStaggeredFermionImplementation.h.

References DaggerYes, DhopEO(), DhopOE(), and Odd.

◆ Mooee() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 160 of file NaiveStaggeredFermionImplementation.h.

References mass.

Referenced by MooeeDag().

◆ MooeeDag() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 167 of file NaiveStaggeredFermionImplementation.h.

References Mooee().

◆ MooeeInv() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 173 of file NaiveStaggeredFermionImplementation.h.

References mass.

Referenced by MooeeInvDag().

◆ MooeeInvDag() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 179 of file NaiveStaggeredFermionImplementation.h.

References MooeeInv().

◆ DhopDeriv()

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

◆ DhopDerivOE()

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

◆ DhopDerivEO()

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

◆ Dhop()

template<class Impl>
void NaiveStaggeredFermion< Impl >::Dhop ( const FermionField & in,
FermionField & out,
int dag )
virtual

Implements FermionOperator< Impl >.

Definition at line 262 of file NaiveStaggeredFermionImplementation.h.

References _grid, conformable(), DhopInternal(), Stencil, and Umu.

Referenced by M(), and Mdag().

◆ DhopOE()

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

Implements FermionOperator< Impl >.

Definition at line 273 of file NaiveStaggeredFermionImplementation.h.

References _cbgrid, conformable(), DhopInternal(), Even, Odd, StencilEven, and UmuOdd.

Referenced by Meooe(), and MeooeDag().

◆ DhopEO()

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

Implements FermionOperator< Impl >.

Definition at line 285 of file NaiveStaggeredFermionImplementation.h.

References _cbgrid, conformable(), DhopInternal(), Even, Odd, StencilOdd, and UmuEven.

Referenced by Meooe(), and MeooeDag().

◆ Mdir() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 297 of file NaiveStaggeredFermionImplementation.h.

References DhopDir().

◆ MdirAll() [1/2]

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

Implements FermionOperator< Impl >.

Definition at line 302 of file NaiveStaggeredFermionImplementation.h.

◆ DhopDir()

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

Implements FermionOperator< Impl >.

Definition at line 308 of file NaiveStaggeredFermionImplementation.h.

References autoView, CpuRead, CpuWrite, Stencil, and Umu.

Referenced by Mdir().

◆ DerivInternal()

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

Definition at line 190 of file NaiveStaggeredFermionImplementation.h.

References autoView, B, CpuRead, CpuWrite, DaggerNo, DaggerYes, Nd, thread_for, and U.

Referenced by DhopDeriv(), DhopDerivEO(), and DhopDerivOE().

◆ DhopInternal()

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

◆ DhopInternalSerialComms()

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

◆ DhopInternalOverlappedComms()

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

Definition at line 335 of file NaiveStaggeredFermionImplementation.h.

References StaggeredKernels< Impl >::DhopNaive(), and U.

Referenced by DhopInternal().

◆ ImportGauge()

template<class Impl>
void NaiveStaggeredFermion< Impl >::ImportGauge ( const GaugeField & _U)
virtual

◆ GetU()

template<class Impl>
DoubledGaugeField & NaiveStaggeredFermion< Impl >::GetU ( void )
inline

Definition at line 126 of file NaiveStaggeredFermion.h.

◆ CopyGaugeCheckerboards()

template<class Impl>
void NaiveStaggeredFermion< Impl >::CopyGaugeCheckerboards ( void )

Definition at line 90 of file NaiveStaggeredFermionImplementation.h.

References Even, Odd, pickCheckerboard(), Umu, UmuEven, and UmuOdd.

Referenced by ImportGauge().

◆ isTrivialEE()

template<class Impl>
virtual int NaiveStaggeredFermion< Impl >::isTrivialEE ( void )
inlinevirtual

Reimplemented from CheckerBoardedSparseMatrixBase< Impl::FermionField >.

Definition at line 136 of file NaiveStaggeredFermion.h.

◆ Mass()

template<class Impl>
virtual RealD NaiveStaggeredFermion< Impl >::Mass ( void )
inlinevirtual

Reimplemented from CheckerBoardedSparseMatrixBase< Impl::FermionField >.

Definition at line 137 of file NaiveStaggeredFermion.h.

◆ SloppyComms()

template<class Impl>
void NaiveStaggeredFermion< Impl >::SloppyComms ( int sloppy)
inline

Definition at line 149 of file NaiveStaggeredFermion.h.

◆ ContractConservedCurrent()

template<class Impl>
void NaiveStaggeredFermion< Impl >::ContractConservedCurrent ( PropagatorField & q_in_1,
PropagatorField & q_in_2,
PropagatorField & q_out,
PropagatorField & src,
Current curr_type,
unsigned int mu )
virtual

Reimplemented from FermionOperator< Impl >.

Definition at line 394 of file NaiveStaggeredFermionImplementation.h.

◆ SeqConservedCurrent()

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

Reimplemented from FermionOperator< Impl >.

Definition at line 405 of file NaiveStaggeredFermionImplementation.h.

◆ DhopImproved()

◆ DhopNaive()

◆ DhopDirKernel()

template<class Impl>
void StaggeredKernels< Impl >::DhopDirKernel ( StencilImpl & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dir,
int disp )
inherited

Definition at line 230 of file StaggeredKernelsImplementation.h.

References U.

◆ DhopSiteGeneric()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteGeneric ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

Definition at line 75 of file StaggeredKernelsImplementation.h.

References U.

Referenced by DhopImproved(), and DhopNaive().

◆ DhopSiteGenericInt()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteGenericInt ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

◆ DhopSiteGenericExt()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteGenericExt ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

◆ DhopSiteHand()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteHand ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

◆ DhopSiteHandInt()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteHandInt ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

◆ DhopSiteHandExt()

template<class Impl>
template<int Naik>
accelerator_inline void StaggeredKernels< Impl >::DhopSiteHandExt ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
staticprotectedinherited

◆ DhopSiteAsm() [1/3]

template<class Impl>
void StaggeredKernels< Impl >::DhopSiteAsm ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int LLs,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
protectedinherited

Definition at line 621 of file StaggeredKernelsAsm.h.

References U.

Referenced by DhopImproved().

◆ DhopSiteAsm() [2/3]

void StaggeredKernels< StaggeredImplF >::DhopSiteAsm ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
protectedinherited

Definition at line 828 of file StaggeredKernelsAsm.h.

References LOAD_CHIa, MULT_ADD_XYZT, MULT_XYZT, nREDUCEa, PERMUTE01, PERMUTE23, PREPARE, ptype, REDUCEa, Tm, Tp, U, Xm, Xp, Ym, Yp, Zm, and Zp.

◆ DhopSiteAsm() [3/3]

void StaggeredKernels< StaggeredImplD >::DhopSiteAsm ( StencilView & st,
DoubledGaugeFieldView & U,
DoubledGaugeFieldView & UUU,
SiteSpinor * buf,
int sF,
int sU,
const FermionFieldView & in,
FermionFieldView & out,
int dag )
protectedinherited

Definition at line 897 of file StaggeredKernelsAsm.h.

References LOAD_CHIa, MULT_ADD_XYZT, MULT_XYZT, nREDUCEa, PERMUTE01, PERMUTE23, PREPARE, ptype, REDUCEa, Tm, Tp, U, Xm, Xp, Ym, Yp, Zm, and Zp.

◆ 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

◆ 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() [2/2]

virtual void CheckerBoardedSparseMatrixBase< Impl::FermionField >::Meooe ( const Impl::FermionField & in,
Impl::FermionField & out )
pure 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

◆ 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

◆ Mdir() [2/2]

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

◆ MdirAll() [2/2]

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

◆ MomentumSpacePropagator()

template<class Impl>
virtual void FermionOperator< Impl >::MomentumSpacePropagator ( FermionField & out,
const FermionField & in,
RealD _m,
std::vector< double > twist )
inlinevirtualinherited

Reimplemented in DWFSlowFermion< Impl >, DWFSlowFermion< WilsonImplD >, DWFSlowFermion< WilsonImplF >, OverlapWilsonCayleyTanhFermion< Impl >, OverlapWilsonCayleyTanhFermion< WilsonImplD >, OverlapWilsonCayleyTanhFermion< WilsonImplD2 >, OverlapWilsonCayleyTanhFermion< WilsonImplF >, OverlapWilsonCayleyZolotarevFermion< Impl >, OverlapWilsonCayleyZolotarevFermion< WilsonImplD >, OverlapWilsonCayleyZolotarevFermion< WilsonImplD2 >, OverlapWilsonCayleyZolotarevFermion< WilsonImplF >, OverlapWilsonContFracTanhFermion< Impl >, OverlapWilsonContFracTanhFermion< WilsonImplD >, OverlapWilsonContFracTanhFermion< WilsonImplD2 >, OverlapWilsonContFracTanhFermion< WilsonImplF >, OverlapWilsonContFracZolotarevFermion< Impl >, OverlapWilsonContFracZolotarevFermion< WilsonImplD >, OverlapWilsonContFracZolotarevFermion< WilsonImplD2 >, OverlapWilsonContFracZolotarevFermion< WilsonImplF >, OverlapWilsonPartialFractionTanhFermion< Impl >, OverlapWilsonPartialFractionTanhFermion< WilsonImplD >, OverlapWilsonPartialFractionTanhFermion< WilsonImplD2 >, OverlapWilsonPartialFractionTanhFermion< WilsonImplF >, OverlapWilsonPartialFractionZolotarevFermion< Impl >, OverlapWilsonPartialFractionZolotarevFermion< WilsonImplD >, OverlapWilsonPartialFractionZolotarevFermion< WilsonImplD2 >, OverlapWilsonPartialFractionZolotarevFermion< WilsonImplF >, WilsonFermion< Impl >, WilsonFermion< GparityWilsonImplD >, WilsonFermion< GparityWilsonImplF >, WilsonFermion< SpWilsonImplD >, WilsonFermion< SpWilsonImplF >, WilsonFermion< SpWilsonTwoIndexAntiSymmetricImplD >, WilsonFermion< SpWilsonTwoIndexAntiSymmetricImplF >, WilsonFermion< SpWilsonTwoIndexSymmetricImplD >, WilsonFermion< SpWilsonTwoIndexSymmetricImplF >, WilsonFermion< WilsonAdjImplD >, WilsonFermion< WilsonAdjImplF >, WilsonFermion< WilsonImplD >, WilsonFermion< WilsonImplD2 >, WilsonFermion< WilsonImplF >, WilsonFermion< WilsonTwoIndexAntiSymmetricImplD >, WilsonFermion< WilsonTwoIndexAntiSymmetricImplF >, WilsonFermion< WilsonTwoIndexSymmetricImplD >, and WilsonFermion< WilsonTwoIndexSymmetricImplF >.

Definition at line 96 of file FermionOperator.h.

Referenced by FreePropagator().

◆ 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

◆ _tmp

template<class Impl>
FermionField NaiveStaggeredFermion< Impl >::_tmp

Definition at line 47 of file NaiveStaggeredFermion.h.

Referenced by NaiveStaggeredFermion().

◆ mass

template<class Impl>
RealD NaiveStaggeredFermion< Impl >::mass

Definition at line 138 of file NaiveStaggeredFermion.h.

Referenced by M(), Mdag(), Mooee(), MooeeInv(), and NaiveStaggeredFermion().

◆ u0

template<class Impl>
RealD NaiveStaggeredFermion< Impl >::u0

Definition at line 139 of file NaiveStaggeredFermion.h.

Referenced by ImportGauge(), and NaiveStaggeredFermion().

◆ c1

template<class Impl>
RealD NaiveStaggeredFermion< Impl >::c1

Definition at line 140 of file NaiveStaggeredFermion.h.

Referenced by ImportGauge(), and NaiveStaggeredFermion().

◆ _grid

template<class Impl>
GridBase* NaiveStaggeredFermion< Impl >::_grid

Definition at line 142 of file NaiveStaggeredFermion.h.

Referenced by Dhop(), DhopDeriv(), and NaiveStaggeredFermion().

◆ _cbgrid

template<class Impl>
GridBase* NaiveStaggeredFermion< Impl >::_cbgrid

◆ Stencil

template<class Impl>
StencilImpl NaiveStaggeredFermion< Impl >::Stencil

Definition at line 146 of file NaiveStaggeredFermion.h.

Referenced by Dhop(), DhopDeriv(), DhopDir(), and NaiveStaggeredFermion().

◆ StencilEven

template<class Impl>
StencilImpl NaiveStaggeredFermion< Impl >::StencilEven

Definition at line 147 of file NaiveStaggeredFermion.h.

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

◆ StencilOdd

template<class Impl>
StencilImpl NaiveStaggeredFermion< Impl >::StencilOdd

Definition at line 148 of file NaiveStaggeredFermion.h.

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

◆ Umu

template<class Impl>
DoubledGaugeField NaiveStaggeredFermion< Impl >::Umu

◆ UmuEven

template<class Impl>
DoubledGaugeField NaiveStaggeredFermion< Impl >::UmuEven

◆ UmuOdd

template<class Impl>
DoubledGaugeField NaiveStaggeredFermion< Impl >::UmuOdd

◆ Opt

int StaggeredKernelsStatic::Opt
staticinherited

◆ Comms

◆ directions

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

◆ displacements

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

◆ npoint

const int NaiveStaggeredFermionStatic::npoint
staticinherited

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