Grid 0.7.0
CompactExpCloverHelpers< Impl > Class Template Reference

#include <CloverHelpers.h>

Inheritance diagram for CompactExpCloverHelpers< Impl >:
CompactWilsonCloverHelpers< Impl >

Public Types

template<typename vtype>
using iImplClover
typedef CompactWilsonCloverHelpers< Impl > CompactHelpers

Public Member Functions

 INHERIT_IMPL_TYPES (Impl)
 INHERIT_CLOVER_TYPES (Impl)
 INHERIT_COMPACT_CLOVER_TYPES (Impl)
 INHERIT_COMPACT_CLOVER_SIZES (Impl)

Static Public Member Functions

static void IdentityTimesC (const CloverField &in, RealD c)
static int getNMAX (RealD prec, RealD R)
static int getNMAX (Lattice< iImplClover< vComplexD > > &t, RealD R)
static int getNMAX (Lattice< iImplClover< vComplexF > > &t, RealD R)
static void InstantiateClover (CloverField &Clover, CloverField &CloverInv, RealD csw_t, RealD diag_mass)
static void InvertClover (CloverField &InvClover, const CloverDiagonalField &diagonal, const CloverTriangleField &triangle, CloverDiagonalField &diagonalInv, CloverTriangleField &triangleInv, bool fixedBoundaries)
static GaugeLinkField Cmunu (std::vector< GaugeLinkField > &U, GaugeLinkField &lambda, int mu, int nu)
template<typename vobj>
static accelerator_inline vobj triangle_elem (const iImplCloverTriangle< vobj > &triangle, int block, int i, int j)
static accelerator_inline int triangle_index (int i, int j)
static void MooeeKernel_gpu (int Nsite, int Ls, const FermionField &in, FermionField &out, const CloverDiagonalField &diagonal, const CloverTriangleField &triangle)
static void MooeeKernel_cpu (int Nsite, int Ls, const FermionField &in, FermionField &out, const CloverDiagonalField &diagonal, const CloverTriangleField &triangle)
static void MooeeKernel (int Nsite, int Ls, const FermionField &in, FermionField &out, const CloverDiagonalField &diagonal, const CloverTriangleField &triangle)
static void Invert (const CloverDiagonalField &diagonal, const CloverTriangleField &triangle, CloverDiagonalField &diagonalInv, CloverTriangleField &triangleInv)
static void ConvertLayout (const CloverField &full, CloverDiagonalField &diagonal, CloverTriangleField &triangle)
static void ConvertLayout (const CloverDiagonalField &diagonal, const CloverTriangleField &triangle, CloverField &full)
static void ModifyBoundaries (CloverDiagonalField &diagonal, CloverTriangleField &triangle, RealD csw_t, RealD cF, RealD diag_mass)
template<class Field, class Mask>
static strong_inline void ApplyBoundaryMask (Field &f, const Mask &m)
template<class MaskField>
static void SetupMasks (MaskField &full, MaskField &even, MaskField &odd)

Detailed Description

template<class Impl>
class CompactExpCloverHelpers< Impl >

Definition at line 234 of file CloverHelpers.h.

Member Typedef Documentation

◆ iImplClover

template<class Impl>
template<typename vtype>
using CompactExpCloverHelpers< Impl >::iImplClover

Definition at line 241 of file CloverHelpers.h.

◆ CompactHelpers

template<class Impl>
typedef CompactWilsonCloverHelpers<Impl> CompactExpCloverHelpers< Impl >::CompactHelpers

Definition at line 242 of file CloverHelpers.h.

Member Function Documentation

◆ INHERIT_IMPL_TYPES()

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

◆ INHERIT_CLOVER_TYPES()

template<class Impl>
CompactExpCloverHelpers< Impl >::INHERIT_CLOVER_TYPES ( Impl )

◆ INHERIT_COMPACT_CLOVER_TYPES()

template<class Impl>
CompactExpCloverHelpers< Impl >::INHERIT_COMPACT_CLOVER_TYPES ( Impl )

◆ IdentityTimesC()

template<class Impl>
void CompactExpCloverHelpers< Impl >::IdentityTimesC ( const CloverField & in,
RealD c )
inlinestatic

Definition at line 245 of file CloverHelpers.h.

References accelerator_for, AcceleratorWrite, and autoView.

Referenced by InstantiateClover().

◆ getNMAX() [1/3]

template<class Impl>
int CompactExpCloverHelpers< Impl >::getNMAX ( RealD prec,
RealD R )
inlinestatic

Definition at line 257 of file CloverHelpers.h.

Referenced by InstantiateClover().

◆ getNMAX() [2/3]

template<class Impl>
int CompactExpCloverHelpers< Impl >::getNMAX ( Lattice< iImplClover< vComplexD > > & t,
RealD R )
inlinestatic

Definition at line 269 of file CloverHelpers.h.

References getNMAX().

Referenced by getNMAX().

◆ getNMAX() [3/3]

template<class Impl>
int CompactExpCloverHelpers< Impl >::getNMAX ( Lattice< iImplClover< vComplexF > > & t,
RealD R )
inlinestatic

Definition at line 270 of file CloverHelpers.h.

References getNMAX().

Referenced by getNMAX().

◆ InstantiateClover()

template<class Impl>
void CompactExpCloverHelpers< Impl >::InstantiateClover ( CloverField & Clover,
CloverField & CloverInv,
RealD csw_t,
RealD diag_mass )
inlinestatic

Definition at line 272 of file CloverHelpers.h.

References getNMAX(), and IdentityTimesC().

◆ InvertClover()

template<class Impl>
void CompactExpCloverHelpers< Impl >::InvertClover ( CloverField & InvClover,
const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle,
CloverDiagonalField & diagonalInv,
CloverTriangleField & triangleInv,
bool fixedBoundaries )
inlinestatic

◆ Cmunu()

template<class Impl>
GaugeLinkField CompactExpCloverHelpers< Impl >::Cmunu ( std::vector< GaugeLinkField > & U,
GaugeLinkField & lambda,
int mu,
int nu )
inlinestatic

Definition at line 326 of file CloverHelpers.h.

References U.

◆ INHERIT_COMPACT_CLOVER_SIZES()

template<class Impl>
CompactWilsonCloverHelpers< Impl >::INHERIT_COMPACT_CLOVER_SIZES ( Impl )
inherited

◆ triangle_elem()

template<class Impl>
template<typename vobj>
accelerator_inline vobj CompactWilsonCloverHelpers< Impl >::triangle_elem ( const iImplCloverTriangle< vobj > & triangle,
int block,
int i,
int j )
inlinestaticinherited

Definition at line 234 of file WilsonCloverHelpers.h.

References accelerator_inline, conjugate(), and triangle_index().

Referenced by Invert(), and MooeeKernel_gpu().

◆ triangle_index()

template<class Impl>
accelerator_inline int CompactWilsonCloverHelpers< Impl >::triangle_index ( int i,
int j )
inlinestaticinherited

Definition at line 244 of file WilsonCloverHelpers.h.

References accelerator_inline.

Referenced by Invert(), and triangle_elem().

◆ MooeeKernel_gpu()

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::MooeeKernel_gpu ( int Nsite,
int Ls,
const FermionField & in,
FermionField & out,
const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle )
inlinestaticinherited

◆ MooeeKernel_cpu()

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::MooeeKernel_cpu ( int Nsite,
int Ls,
const FermionField & in,
FermionField & out,
const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle )
inlinestaticinherited

Definition at line 291 of file WilsonCloverHelpers.h.

References autoView, conjugate(), CpuRead, CpuWrite, PREFETCH_CLOVER, thread_for, and vstream().

Referenced by MooeeKernel().

◆ MooeeKernel()

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::MooeeKernel ( int Nsite,
int Ls,
const FermionField & in,
FermionField & out,
const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle )
inlinestaticinherited

◆ Invert()

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::Invert ( const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle,
CloverDiagonalField & diagonalInv,
CloverTriangleField & triangleInv )
inlinestaticinherited

◆ ConvertLayout() [1/2]

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::ConvertLayout ( const CloverField & full,
CloverDiagonalField & diagonal,
CloverTriangleField & triangle )
inlinestaticinherited

◆ ConvertLayout() [2/2]

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::ConvertLayout ( const CloverDiagonalField & diagonal,
const CloverTriangleField & triangle,
CloverField & full )
inlinestaticinherited

◆ ModifyBoundaries()

template<class Impl>
void CompactWilsonCloverHelpers< Impl >::ModifyBoundaries ( CloverDiagonalField & diagonal,
CloverTriangleField & triangle,
RealD csw_t,
RealD cF,
RealD diag_mass )
inlinestaticinherited

◆ ApplyBoundaryMask()

◆ SetupMasks()

template<class Impl>
template<class MaskField>
void CompactWilsonCloverHelpers< Impl >::SetupMasks ( MaskField & full,
MaskField & even,
MaskField & odd )
inlinestaticinherited

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