|
QUDA
0.9.0
|
#include <gauge_field_order.h>
Public Member Functions | |
| FieldOrder (GaugeField &U, void *gauge_=0, void **ghost_=0) | |
| FieldOrder (const FieldOrder &o) | |
| virtual | ~FieldOrder () |
| __device__ __host__ const complex< Float > & | operator() (int d, int parity, int x, int row, int col) const |
| __device__ __host__ complex< Float > & | operator() (int d, int parity, int x, int row, int col) |
| __device__ __host__ const complex< Float > & | Ghost (int d, int parity, int x, int row, int col) const |
| __device__ __host__ complex< Float > & | 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__ complex< Float > & | operator() (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) |
| __device__ __host__ const complex< Float > & | Ghost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) const |
| __device__ __host__ complex< Float > & | Ghost (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col) |
| __device__ __host__ void | atomicAdd (int d, int parity, int x, int s_row, int s_col, int c_row, int c_col, complex< Float > &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 | norm2 (int dim) const |
| Returns the L2 norm squared of the field in a given dimension. More... | |
| size_t | Bytes () const |
Public Attributes | |
| const int | volumeCB |
| const int | nDim |
| const int | geometry |
| QudaFieldLocation | location |
| const Accessor< Float, nColor, order > | accessor |
| const GhostAccessor< Float, nColor, order, native_ghost > | ghostAccessor |
Static Public Attributes | |
| static constexpr int | nColorCoarse = nColor / nSpinCoarse |
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.
Definition at line 380 of file gauge_field_order.h.
|
inline |
Constructor for the FieldOrder class
| field | The field that we are accessing |
Definition at line 397 of file gauge_field_order.h.
References errorQuda, QUDA_RECONSTRUCT_NO, and quda::GaugeField::Reconstruct().

|
inline |
Definition at line 406 of file gauge_field_order.h.
|
inlinevirtual |
Definition at line 411 of file gauge_field_order.h.
|
inline |
Definition at line 517 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::accessor, d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse, parity, val, and x.
|
inline |
Return the size of the allocation (geometry and parity left out and added as needed in Tunable::bytes)
Definition at line 567 of file gauge_field_order.h.
References nColor, and quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::volumeCB.
|
inline |
Returns the field geometry
Definition at line 535 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::geometry.
|
inline |
Read-only complex-member accessor function for the ghost zone
| d | dimension index |
| parity | Parity index |
| x | 1-d site index |
| row | row index |
| c | column index |
Definition at line 443 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::ghostAccessor, parity, and x.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ghost().

|
inline |
Writable complex-member accessor function for the ghost zone
| d | dimension index |
| parity | Parity index |
| x | 1-d site index |
| row | row index |
| c | column index |
Definition at line 454 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::ghostAccessor, parity, and x.
|
inline |
Specialized read-only complex-member accessor function (for coarse gauge field ghost zone)
| 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 497 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ghost(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse, parity, and x.

|
inline |
Specialized read-only complex-member accessor function (for coarse gauge field ghost zone)
| 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 512 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ghost(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse, parity, and x.

|
inline |
Returns the number of field colors
Definition at line 523 of file gauge_field_order.h.
References nColor.
|
inline |
Returns the number of coarse gauge field colors
Definition at line 541 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse.
|
inline |
Returns the field geometric dimension
Definition at line 532 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nDim.
|
inline |
Returns the L2 norm squared of the field in a given dimension.
| [in] | dim | Which dimension we are taking the norm of |
Definition at line 548 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::accessor, comm_allreduce(), dim, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::location, nColor, quda::norm(), parity, QUDA_CUDA_FIELD_LOCATION, and quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::volumeCB.

|
inline |
Returns the number of coarse gauge field spins
Definition at line 538 of file gauge_field_order.h.
|
inline |
Read-only complex-member accessor function
| d | dimension index |
| parity | Parity index |
| x | 1-d site index |
| row | row index |
| c | column index |
Definition at line 421 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::accessor, d, parity, and x.
|
inline |
Writable complex-member accessor function
| d | dimension index |
| parity | Parity index |
| x | 1-d site index |
| row | row index |
| c | column index |
Definition at line 432 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::accessor, d, parity, and x.
|
inline |
Specialized read-only complex-member accessor function (for coarse gauge field)
| 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 467 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse, parity, and x.
|
inline |
Specialized read-only complex-member accessor function (for coarse gauge field)
| 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 482 of file gauge_field_order.h.
References d, quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nColorCoarse, parity, and x.
|
inline |
Returns the field volume
Definition at line 526 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::volumeCB.
|
inline |
Returns the field volume
Definition at line 529 of file gauge_field_order.h.
References quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::volumeCB.
| const Accessor<Float,nColor,order> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::accessor |
Definition at line 389 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::atomicAdd(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::norm2(), and quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::operator()().
| const int quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::geometry |
Definition at line 385 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Geometry().
| const GhostAccessor<Float,nColor,order,native_ghost> quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::ghostAccessor |
Definition at line 390 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ghost().
| QudaFieldLocation quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::location |
Definition at line 387 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::norm2().
|
static |
Definition at line 386 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::atomicAdd(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ghost(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::NcolorCoarse(), and quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::operator()().
| const int quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::nDim |
Definition at line 384 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Ndim().
| const int quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::volumeCB |
An internal reference to the actual field we are accessing
Definition at line 383 of file gauge_field_order.h.
Referenced by quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Bytes(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::norm2(), quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::Volume(), and quda::gauge::FieldOrder< Float, nColor, nSpinCoarse, order, native_ghost >::VolumeCB().
1.8.14