QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ > Struct Template Reference

Parameter structure for driving the Staggered Dslash operator. More...

Inheritance diagram for quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >:
Inheritance graph
[legend]
Collaboration diagram for quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >:
Collaboration graph
[legend]

Public Types

typedef mapper< Float >::type real
 
using F = typename colorspinor_mapper< Float, nSpin, nColor, spin_project, spinor_direct_load >::type
 
using GU = typename gauge_mapper< Float, reconstruct_u, 18, phase, gauge_direct_load, ghost, use_inphase >::type
 
using GL = typename gauge_mapper< Float, reconstruct_l, 18, QUDA_STAGGERED_PHASE_NO, gauge_direct_load, ghost, use_inphase >::type
 
- Public Types inherited from quda::DslashArg< Float >
typedef mapper< Float >::type real
 

Public Member Functions

 StaggeredArg (ColorSpinorField &out, const ColorSpinorField &in, const GaugeField &U, const GaugeField &L, double a, const ColorSpinorField &x, int parity, bool dagger, const int *comm_override)
 
- Public Member Functions inherited from quda::DslashArg< Float >
 DslashArg (const ColorSpinorField &in, const GaugeField &U, int parity, bool dagger, bool xpay, int nFace, int spin_project, const int *comm_override)
 

Public Attributes

F out
 
const F in
 
const F x
 
const GU U
 
const GL L
 
const real a
 
const real tboundary
 
const bool is_first_time_slice
 
const bool is_last_time_slice
 
- Public Attributes inherited from quda::DslashArg< Float >
const int parity
 
const int nParity
 
const int nFace
 
const QudaReconstructType reconstruct
 
const int_fastdiv X0h
 
const int_fastdiv dim [5]
 
const int volumeCB
 
int commDim [4]
 
int ghostDim [4]
 
const bool dagger
 
const bool xpay
 
real t_proj_scale
 
DslashConstant dc
 
KernelType kernel_type
 
bool remote_write
 
int_fastdiv threads
 
int threadDimMapLower [4]
 
int threadDimMapUpper [4]
 
const bool spin_project
 
real twist_a
 
real twist_b
 
real twist_c
 

Static Public Attributes

static constexpr int nSpin = 1
 
static constexpr bool spin_project = false
 
static constexpr bool spinor_direct_load = false
 
static constexpr QudaReconstructType reconstruct_u = reconstruct_u_
 
static constexpr QudaReconstructType reconstruct_l = reconstruct_l_
 
static constexpr bool gauge_direct_load = false
 
static constexpr QudaGhostExchange ghost = QUDA_GHOST_EXCHANGE_PAD
 
static constexpr bool use_inphase = improved_ ? false : true
 
static constexpr QudaStaggeredPhase phase = phase_
 
static constexpr bool improved = improved_
 

Detailed Description

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
struct quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >

Parameter structure for driving the Staggered Dslash operator.

Definition at line 18 of file dslash_staggered.cuh.

Member Typedef Documentation

◆ F

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
using quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::F = typename colorspinor_mapper<Float, nSpin, nColor, spin_project, spinor_direct_load>::type

Definition at line 23 of file dslash_staggered.cuh.

◆ GL

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
using quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::GL = typename gauge_mapper<Float, reconstruct_l, 18, QUDA_STAGGERED_PHASE_NO, gauge_direct_load, ghost, use_inphase>::type

Definition at line 33 of file dslash_staggered.cuh.

◆ GU

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
using quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::GU = typename gauge_mapper<Float, reconstruct_u, 18, phase, gauge_direct_load, ghost, use_inphase>::type

Definition at line 31 of file dslash_staggered.cuh.

◆ real

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
typedef mapper<Float>::type quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::real

Definition at line 19 of file dslash_staggered.cuh.

Constructor & Destructor Documentation

◆ StaggeredArg()

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::StaggeredArg ( ColorSpinorField out,
const ColorSpinorField in,
const GaugeField U,
const GaugeField L,
double  a,
const ColorSpinorField x,
int  parity,
bool  dagger,
const int *  comm_override 
)
inline

Member Data Documentation

◆ a

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const real quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::a

the long gauge field

Definition at line 41 of file dslash_staggered.cuh.

◆ gauge_direct_load

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::gauge_direct_load = false
static

Definition at line 27 of file dslash_staggered.cuh.

◆ ghost

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr QudaGhostExchange quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::ghost = QUDA_GHOST_EXCHANGE_PAD
static

Definition at line 28 of file dslash_staggered.cuh.

Referenced by quda::applyStaggered().

◆ improved

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::improved = improved_
static

are we on the last (global) time slice

Definition at line 45 of file dslash_staggered.cuh.

◆ in

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const F quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::in

output vector field

Definition at line 36 of file dslash_staggered.cuh.

Referenced by quda::applyStaggered().

◆ is_first_time_slice

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::is_first_time_slice

temporal boundary condition

Definition at line 43 of file dslash_staggered.cuh.

◆ is_last_time_slice

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::is_last_time_slice

are we on the first (global) time slice

Definition at line 44 of file dslash_staggered.cuh.

◆ L

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const GL quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::L

the gauge field

Definition at line 39 of file dslash_staggered.cuh.

Referenced by quda::applyStaggered().

◆ nSpin

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr int quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::nSpin = 1
static

Definition at line 20 of file dslash_staggered.cuh.

◆ out

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
F quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::out

Definition at line 35 of file dslash_staggered.cuh.

Referenced by quda::staggered().

◆ phase

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr QudaStaggeredPhase quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::phase = phase_
static

Definition at line 30 of file dslash_staggered.cuh.

◆ reconstruct_l

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr QudaReconstructType quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::reconstruct_l = reconstruct_l_
static

Definition at line 26 of file dslash_staggered.cuh.

◆ reconstruct_u

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr QudaReconstructType quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::reconstruct_u = reconstruct_u_
static

Definition at line 25 of file dslash_staggered.cuh.

◆ spin_project

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::spin_project = false
static

Definition at line 21 of file dslash_staggered.cuh.

◆ spinor_direct_load

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::spinor_direct_load = false
static

Definition at line 22 of file dslash_staggered.cuh.

◆ tboundary

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const real quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::tboundary

xpay scale factor

Definition at line 42 of file dslash_staggered.cuh.

◆ U

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const GU quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::U

input vector when doing xpay

Definition at line 38 of file dslash_staggered.cuh.

Referenced by quda::applyStaggered().

◆ use_inphase

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
constexpr bool quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::use_inphase = improved_ ? false : true
static

Definition at line 29 of file dslash_staggered.cuh.

◆ x

template<typename Float, int nColor, QudaReconstructType reconstruct_u_, QudaReconstructType reconstruct_l_, bool improved_, QudaStaggeredPhase phase_ = QUDA_STAGGERED_PHASE_MILC>
const F quda::StaggeredArg< Float, nColor, reconstruct_u_, reconstruct_l_, improved_, phase_ >::x

input vector field

Definition at line 37 of file dslash_staggered.cuh.

Referenced by quda::staggered().


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