|
| FieldOrder (GaugeField &U, void *gauge_=0, void **ghost_=0) |
|
| FieldOrder (const FieldOrder &o) |
|
void | resetScale (double max) |
|
__device__ __host__ complex< Float > | operator() (int d, int parity, int x, int row, int col) const |
|
__device__ __host__ fieldorder_wrapper< Float, storeFloat > | operator() (int d, int parity, int x, int row, int col) |
|
__device__ __host__ complex< Float > | Ghost (int d, int parity, int x, int row, int col) const |
|
__device__ __host__ fieldorder_wrapper< Float, storeFloat > | Ghost (int d, int parity, int x, int row, int col) |
|
__device__ __host__ const complex< Float > | operator() (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) const |
|
__device__ __host__ fieldorder_wrapper< Float, storeFloat > | operator() (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) |
|
__device__ __host__ complex< Float > | Ghost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) const |
|
__device__ __host__ fieldorder_wrapper< Float, storeFloat > | Ghost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) |
|
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 |
|
template<typename Float, int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
struct quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >
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 |
nColor | Number of colors for the field |
nSpinCoarse | Number of "spin degrees of freedom" (for coarse-link fields only) |
order | Storage order of the field |
native_ghost | Whether to use native ghosts (inlined into the padded area for internal-order fields or use a separate array if false) |
Definition at line 896 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__host__ double quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::abs_max |
( |
int |
dim = -1 , |
|
|
bool |
global = true |
|
) |
| const |
|
inline |
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__host__ double quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::abs_min |
( |
int |
dim = -1 , |
|
|
bool |
global = true |
|
) |
| const |
|
inline |
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
template<typename theirFloat >
__device__ __host__ void quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::atomicAdd |
( |
int |
d, |
|
|
int |
parity, |
|
|
int |
x, |
|
|
int |
s_row, |
|
|
int |
s_col, |
|
|
int |
c_row, |
|
|
int |
c_col, |
|
|
const complex< theirFloat > & |
val |
|
) |
| |
|
inline |
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::Ghost |
( |
int |
d, |
|
|
int |
parity, |
|
|
int |
x, |
|
|
int |
row, |
|
|
int |
col |
|
) |
| const |
|
inline |
Read-only complex-member accessor function for the ghost zone
- Parameters
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
row | row index |
c | column index |
Definition at line 963 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ fieldorder_wrapper<Float,storeFloat> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::Ghost |
( |
int |
d, |
|
|
int |
parity, |
|
|
int |
x, |
|
|
int |
row, |
|
|
int |
col |
|
) |
| |
|
inline |
Writable complex-member accessor function for the ghost zone
- Parameters
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
row | row index |
c | column index |
Definition at line 974 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::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
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
s_row | row spin index |
c_row | row color index |
s_col | col spin index |
c_col | col color index |
Definition at line 1017 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ fieldorder_wrapper<Float,storeFloat> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::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
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
s_row | row spin index |
c_row | row color index |
s_col | col spin index |
c_col | col color index |
Definition at line 1033 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__host__ double quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::norm1 |
( |
int |
dim = -1 , |
|
|
bool |
global = true |
|
) |
| const |
|
inline |
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__host__ double quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::norm2 |
( |
int |
dim = -1 , |
|
|
bool |
global = true |
|
) |
| const |
|
inline |
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ complex<Float> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::operator() |
( |
int |
d, |
|
|
int |
parity, |
|
|
int |
x, |
|
|
int |
row, |
|
|
int |
col |
|
) |
| const |
|
inline |
Read-only complex-member accessor function
- Parameters
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
row | row index |
c | column index |
Definition at line 941 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ fieldorder_wrapper<Float,storeFloat> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::operator() |
( |
int |
d, |
|
|
int |
parity, |
|
|
int |
x, |
|
|
int |
row, |
|
|
int |
col |
|
) |
| |
|
inline |
Writable complex-member accessor function
- Parameters
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
row | row index |
c | column index |
Definition at line 952 of file gauge_field_order.h.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ const complex<Float> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::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
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
s_row | row spin index |
c_row | row color index |
s_col | col spin index |
c_col | col color index |
Definition at line 987 of file gauge_field_order.h.
References quda::gauge_wrapper< Float, T >::parity.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
__device__ __host__ fieldorder_wrapper<Float,storeFloat> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost, storeFloat, use_tex >::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
-
d | dimension index |
parity | Parity index |
x | 1-d site index |
s_row | row spin index |
c_row | row color index |
s_col | col spin index |
c_col | col color index |
Definition at line 1003 of file gauge_field_order.h.
References quda::gauge_wrapper< Float, T >::parity.
template<typename Float , int nColor, int nSpinCoarse, QudaGaugeFieldOrder order, bool native_ghost = true, typename storeFloat = Float, bool use_tex = false>
An internal reference to the actual field we are accessing
Definition at line 899 of file gauge_field_order.h.