QUDA  v1.1.0
A library for QCD on GPUs
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ > Struct Template Reference

#include <gauge_field_order.h>

Public Types

using Float = Float_
 
using storeFloat = storeFloat_
 
using accessor_type = Accessor< Float, nColor, order, storeFloat >
 

Public Member Functions

 FieldOrder (GaugeField &U, void *gauge_=0, void **ghost_=0)
 
 FieldOrder (const FieldOrder &o)
 
void resetScale (double max)
 
__device__ __host__ complex< Floatoperator() (int d, int parity, int x, int row, int col) const
 
__device__ __host__ const auto wrap (int d, int parity, int x) const
 This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x. Only available for the QUDA_MILC_GAUGE_ORDER order. More...
 
__device__ __host__ auto wrap (int d, int parity, int x)
 the non-const wrap method. More...
 
__device__ __host__ fieldorder_wrapper< Float, storeFloatoperator() (int d, int parity, int x, int row, int col)
 
__device__ __host__ complex< FloatGhost (int d, int parity, int x, int row, int col) const
 
__device__ __host__ auto Ghost (int d, int parity, int x) const
 
__device__ __host__ fieldorder_wrapper< Float, storeFloatGhost (int d, int parity, int x, int row, int col)
 
__device__ __host__ const auto wrap_ghost (int d, int parity, int x) const
 This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x. Only available for the QUDA_MILC_GAUGE_ORDER order. More...
 
__device__ __host__ auto wrap_ghost (int d, int parity, int x)
 the non-const wrap_ghost method. More...
 
__device__ __host__ const complex< Floatoperator() (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) const
 
__device__ __host__ fieldorder_wrapper< Float, storeFloatoperator() (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col)
 
__device__ __host__ const auto wrap (int d, int parity, int x, int s_row, int s_col) const
 This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x, s_row, s_col. Only available for the QUDA_MILC_GAUGE_ORDER order. More...
 
__device__ __host__ auto wrap (int d, int parity, int x, int s_row, int s_col)
 the non-const wrap method. More...
 
__device__ __host__ complex< FloatGhost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) const
 
__device__ __host__ fieldorder_wrapper< Float, storeFloatGhost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col)
 
__device__ __host__ const auto wrap_ghost (int d, int parity, int x, int s_row, int s_col) const
 This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x, s_row, s_col. Only available for the QUDA_MILC_GAUGE_ORDER order. More...
 
__device__ __host__ auto wrap_ghost (int d, int parity, int x, int s_row, int s_col)
 the non-const wrap_ghost method. More...
 
template<typename theirFloat >
__device__ __host__ void atomicAdd (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col, const complex< theirFloat > &val)
 
__device__ __host__ int Ncolor () const
 
__device__ __host__ int Volume () const
 
__device__ __host__ int VolumeCB () const
 
__device__ __host__ int Ndim () const
 
__device__ __host__ int Geometry () const
 
__device__ __host__ int NspinCoarse () const
 
__device__ __host__ int NcolorCoarse () const
 
__host__ double norm1 (int dim=-1, bool global=true) const
 Returns the L1 norm of the field in a given dimension. More...
 
__host__ double norm2 (int dim=-1, bool global=true) const
 Returns the L2 norm squared of the field in a given dimension. More...
 
__host__ double abs_max (int dim=-1, bool global=true) const
 Returns the Linfinity norm of the field in a given dimension. More...
 
__host__ double abs_min (int dim=-1, bool global=true) const
 Returns the minimum absolute value of the field. More...
 
size_t Bytes () const
 

Static Public Member Functions

static constexpr bool fixedPoint ()
 

Public Attributes

const int volumeCB
 
const int nDim
 
const int_fastdiv geometry
 
const QudaFieldLocation location
 
accessor_type accessor
 
GhostAccessor< Float, nColor, order, native_ghost, storeFloatghostAccessor
 

Static Public Attributes

static constexpr int nColorCoarse = nColor / nSpinCoarse
 
static constexpr bool is_mma_compatible = accessor_type::is_mma_compatible
 
static constexpr bool supports_ghost_zone = true
 

Detailed Description

template<typename Float_, int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
struct quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >

This is a template driven generic gauge field accessor. To deploy for a specifc field ordering, the two operator() accessors have to be specialized for that ordering.

Template Parameters
Float_Underlying type returned by the accessors
nColorNumber of colors for the field
nSpinCoarseNumber of "spin degrees of freedom" (for coarse-link fields only)
orderStorage order of the field
native_ghostWhether to use native ghosts (inlined into
storeFloat_Underlying storage type for the field the padded area for internal-order fields or use a separate array if false)

Definition at line 921 of file gauge_field_order.h.

Member Typedef Documentation

◆ accessor_type

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
using quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::accessor_type = Accessor<Float, nColor, order, storeFloat>

Definition at line 934 of file gauge_field_order.h.

◆ Float

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
using quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Float = Float_

Convenient types

Definition at line 924 of file gauge_field_order.h.

◆ storeFloat

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
using quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::storeFloat = storeFloat_

Definition at line 925 of file gauge_field_order.h.

Constructor & Destructor Documentation

◆ FieldOrder() [1/2]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::FieldOrder ( GaugeField U,
void *  gauge_ = 0,
void **  ghost_ = 0 
)
inline

Constructor for the FieldOrder class

Parameters
fieldThe field that we are accessing

Definition at line 946 of file gauge_field_order.h.

◆ FieldOrder() [2/2]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::FieldOrder ( const FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ > &  o)
inline

Definition at line 955 of file gauge_field_order.h.

Member Function Documentation

◆ abs_max()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__host__ double quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::abs_max ( int  dim = -1,
bool  global = true 
) const
inline

Returns the Linfinity norm of the field in a given dimension.

Parameters
[in]dimWhich dimension we are taking the norm of (dim=-1 mean all dimensions)
Returns
Linfinity norm

Definition at line 1224 of file gauge_field_order.h.

◆ abs_min()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__host__ double quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::abs_min ( int  dim = -1,
bool  global = true 
) const
inline

Returns the minimum absolute value of the field.

Parameters
[in]dimWhich dimension we are taking the norm of (dim=-1 mean all dimensions)
Returns
Minimum norm

Definition at line 1236 of file gauge_field_order.h.

◆ atomicAdd()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
template<typename theirFloat >
__device__ __host__ void quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::atomicAdd ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col,
int  c_row,
int  c_col,
const complex< theirFloat > &  val 
)
inline

Definition at line 1169 of file gauge_field_order.h.

◆ Bytes()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
size_t quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Bytes ( ) const
inline

Return the size of the allocation (geometry and parity left out and added as needed in Tunable::bytes)

Definition at line 1244 of file gauge_field_order.h.

◆ fixedPoint()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
static constexpr bool quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::fixedPoint ( )
inlinestaticconstexpr

Definition at line 965 of file gauge_field_order.h.

◆ Geometry()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Geometry ( ) const
inline

Returns the field geometry

Definition at line 1187 of file gauge_field_order.h.

◆ Ghost() [1/5]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ghost ( int  d,
int  parity,
int  x 
) const
inline

Definition at line 1025 of file gauge_field_order.h.

◆ Ghost() [2/5]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ fieldorder_wrapper<Float, storeFloat> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ghost ( int  d,
int  parity,
int  x,
int  row,
int  col 
)
inline

Writable complex-member accessor function for the ghost zone

Parameters
ddimension index
parityParity index
x1-d site index
rowrow index
ccolumn index

Definition at line 1035 of file gauge_field_order.h.

◆ Ghost() [3/5]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ghost ( int  d,
int  parity,
int  x,
int  row,
int  col 
) const
inline

Read-only complex-member accessor function for the ghost zone

Parameters
ddimension index
parityParity index
x1-d site index
rowrow index
ccolumn index

Definition at line 1020 of file gauge_field_order.h.

◆ Ghost() [4/5]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ fieldorder_wrapper<Float, storeFloat> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ghost ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col,
int  c_row,
int  c_col 
)
inline

Specialized read-only complex-member accessor function (for coarse gauge field ghost zone)

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
c_rowrow color index
s_colcol spin index
c_colcol color index

Definition at line 1140 of file gauge_field_order.h.

◆ Ghost() [5/5]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ghost ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col,
int  c_row,
int  c_col 
) const
inline

Specialized read-only complex-member accessor function (for coarse gauge field ghost zone)

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
c_rowrow color index
s_colcol spin index
c_colcol color index

Definition at line 1124 of file gauge_field_order.h.

◆ Ncolor()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ncolor ( ) const
inline

Returns the number of field colors

Definition at line 1175 of file gauge_field_order.h.

◆ NcolorCoarse()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::NcolorCoarse ( ) const
inline

Returns the number of coarse gauge field colors

Definition at line 1193 of file gauge_field_order.h.

◆ Ndim()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Ndim ( ) const
inline

Returns the field geometric dimension

Definition at line 1184 of file gauge_field_order.h.

◆ norm1()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__host__ double quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::norm1 ( int  dim = -1,
bool  global = true 
) const
inline

Returns the L1 norm of the field in a given dimension.

Parameters
[in]dimWhich dimension we are taking the norm of (dim=-1 mean all dimensions)
Returns
L1 norm

Definition at line 1200 of file gauge_field_order.h.

◆ norm2()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__host__ double quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::norm2 ( int  dim = -1,
bool  global = true 
) const
inline

Returns the L2 norm squared of the field in a given dimension.

Parameters
[in]dimWhich dimension we are taking the norm of (dim=-1 mean all dimensions)
Returns
L2 norm squared

Definition at line 1212 of file gauge_field_order.h.

◆ NspinCoarse()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::NspinCoarse ( ) const
inline

Returns the number of coarse gauge field spins

Definition at line 1190 of file gauge_field_order.h.

◆ operator()() [1/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ fieldorder_wrapper<Float, storeFloat> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::operator() ( int  d,
int  parity,
int  x,
int  row,
int  col 
)
inline

Writable complex-member accessor function

Parameters
ddimension index
parityParity index
x1-d site index
rowrow index
ccolumn index

Definition at line 1007 of file gauge_field_order.h.

◆ operator()() [2/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::operator() ( int  d,
int  parity,
int  x,
int  row,
int  col 
) const
inline

Read-only complex-member accessor function

Parameters
ddimension index
parityParity index
x1-d site index
rowrow index
ccolumn index

Definition at line 975 of file gauge_field_order.h.

◆ operator()() [3/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ fieldorder_wrapper<Float, storeFloat> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::operator() ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col,
int  c_row,
int  c_col 
)
inline

Specialized read-only complex-member accessor function (for coarse gauge field)

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
c_rowrow color index
s_colcol spin index
c_colcol color index

Definition at line 1085 of file gauge_field_order.h.

◆ operator()() [4/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ const complex<Float> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::operator() ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col,
int  c_row,
int  c_col 
) const
inline

Specialized read-only complex-member accessor function (for coarse gauge field)

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
c_rowrow color index
s_colcol spin index
c_colcol color index

Definition at line 1069 of file gauge_field_order.h.

◆ resetScale()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
void quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::resetScale ( double  max)
inline

Definition at line 960 of file gauge_field_order.h.

◆ Volume()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::Volume ( ) const
inline

Returns the field volume

Definition at line 1178 of file gauge_field_order.h.

◆ VolumeCB()

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::VolumeCB ( ) const
inline

Returns the field volume

Definition at line 1181 of file gauge_field_order.h.

◆ wrap() [1/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap ( int  d,
int  parity,
int  x 
)
inline

the non-const wrap method.

Definition at line 997 of file gauge_field_order.h.

◆ wrap() [2/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ const auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap ( int  d,
int  parity,
int  x 
) const
inline

This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x. Only available for the QUDA_MILC_GAUGE_ORDER order.

Parameters
ddimension index
parityParity index
x1-d site index

Definition at line 989 of file gauge_field_order.h.

◆ wrap() [3/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col 
)
inline

the non-const wrap method.

Definition at line 1109 of file gauge_field_order.h.

◆ wrap() [4/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ const auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col 
) const
inline

This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x, s_row, s_col. Only available for the QUDA_MILC_GAUGE_ORDER order.

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
s_colcol spin index

Definition at line 1101 of file gauge_field_order.h.

◆ wrap_ghost() [1/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap_ghost ( int  d,
int  parity,
int  x 
)
inline

the non-const wrap_ghost method.

Definition at line 1057 of file gauge_field_order.h.

◆ wrap_ghost() [2/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ const auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap_ghost ( int  d,
int  parity,
int  x 
) const
inline

This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x. Only available for the QUDA_MILC_GAUGE_ORDER order.

Parameters
ddimension index
parityParity index
x1-d site index

Definition at line 1049 of file gauge_field_order.h.

◆ wrap_ghost() [3/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap_ghost ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col 
)
inline

the non-const wrap_ghost method.

Definition at line 1163 of file gauge_field_order.h.

◆ wrap_ghost() [4/4]

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
__device__ __host__ const auto quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::wrap_ghost ( int  d,
int  parity,
int  x,
int  s_row,
int  s_col 
) const
inline

This and the following method (eventually) creates a fieldorder_wrapper object whose pointer points to the start of the memory chunk corresponds to the matrix at d, parity, x, s_row, s_col. Only available for the QUDA_MILC_GAUGE_ORDER order.

Parameters
ddimension index
parityParity index
x1-d site index
s_rowrow spin index
s_colcol spin index

Definition at line 1155 of file gauge_field_order.h.

Member Data Documentation

◆ accessor

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
accessor_type quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::accessor

Definition at line 936 of file gauge_field_order.h.

◆ geometry

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
const int_fastdiv quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::geometry

Definition at line 930 of file gauge_field_order.h.

◆ ghostAccessor

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
GhostAccessor<Float, nColor, order, native_ghost, storeFloat> quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::ghostAccessor

Definition at line 937 of file gauge_field_order.h.

◆ is_mma_compatible

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
constexpr bool quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::is_mma_compatible = accessor_type::is_mma_compatible
staticconstexpr

Definition at line 935 of file gauge_field_order.h.

◆ location

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
const QudaFieldLocation quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::location

Definition at line 931 of file gauge_field_order.h.

◆ nColorCoarse

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
constexpr int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::nColorCoarse = nColor / nSpinCoarse
staticconstexpr

Definition at line 932 of file gauge_field_order.h.

◆ nDim

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
const int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::nDim

Definition at line 929 of file gauge_field_order.h.

◆ supports_ghost_zone

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
constexpr bool quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::supports_ghost_zone = true
staticconstexpr

Does this field type support ghost zones?

Definition at line 940 of file gauge_field_order.h.

◆ volumeCB

template<typename Float_ , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat_ = Float_>
const int quda::gauge::FieldOrder< Float_, nColor, nSpinCoarse, order, native_ghost, storeFloat_ >::volumeCB

An internal reference to the actual field we are accessing

Definition at line 928 of file gauge_field_order.h.


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