QUDA  v1.1.0
A library for QCD on GPUs
Public Types | Public Member Functions | Public Attributes | List of all members
quda::gauge::LegacyOrder< Float, length > Struct Template Reference

The LegacyOrder defines the ghost zone storage and ordering for all cpuGaugeFields, which use the same ghost zone storage. More...

#include <gauge_field_order.h>

+ Inheritance diagram for quda::gauge::LegacyOrder< Float, length >:

Public Types

using Accessor = LegacyOrder< Float, length >
 
using real = typename mapper< Float >::type
 
using complex = complex< real >
 

Public Member Functions

 LegacyOrder (const GaugeField &u, Float **ghost_)
 
 LegacyOrder (const LegacyOrder &order)
 
__device__ __host__ void loadGhost (complex v[length/2], int x, int dir, int parity, real phase=1.0) const
 
__device__ __host__ void saveGhost (const complex v[length/2], int x, int dir, int parity)
 
__device__ __host__ gauge_ghost_wrapper< real, AccessorGhost (int dim, int ghost_idx, int parity, real phase=1.0)
 This accessor routine returns a gauge_ghost_wrapper to this object, allowing us to overload various operators for manipulating at the site level interms of matrix operations. More...
 
__device__ __host__ const gauge_ghost_wrapper< real, AccessorGhost (int dim, int ghost_idx, int parity, real phase=1.0) const
 This accessor routine returns a const gauge_ghost_wrapper to this object, allowing us to overload various operators for manipulating at the site level interms of matrix operations. More...
 
__device__ __host__ void loadGhostEx (complex v[length/2], int x, int dummy, int dir, int dim, int g, int parity, const int R[]) const
 
__device__ __host__ void saveGhostEx (const complex v[length/2], int x, int dummy, int dir, int dim, int g, int parity, const int R[])
 

Public Attributes

Float * ghost [QUDA_MAX_DIM]
 
int faceVolumeCB [QUDA_MAX_DIM]
 
const int volumeCB
 
const int stride
 
const int geometry
 
const int hasPhase
 

Detailed Description

template<typename Float, int length>
struct quda::gauge::LegacyOrder< Float, length >

The LegacyOrder defines the ghost zone storage and ordering for all cpuGaugeFields, which use the same ghost zone storage.

Definition at line 2176 of file gauge_field_order.h.

Member Typedef Documentation

◆ Accessor

template<typename Float , int length>
using quda::gauge::LegacyOrder< Float, length >::Accessor = LegacyOrder<Float, length>

Definition at line 2177 of file gauge_field_order.h.

◆ complex

template<typename Float , int length>
using quda::gauge::LegacyOrder< Float, length >::complex = complex<real>

Definition at line 2179 of file gauge_field_order.h.

◆ real

template<typename Float , int length>
using quda::gauge::LegacyOrder< Float, length >::real = typename mapper<Float>::type

Definition at line 2178 of file gauge_field_order.h.

Constructor & Destructor Documentation

◆ LegacyOrder() [1/2]

template<typename Float , int length>
quda::gauge::LegacyOrder< Float, length >::LegacyOrder ( const GaugeField u,
Float **  ghost_ 
)
inline

Definition at line 2187 of file gauge_field_order.h.

◆ LegacyOrder() [2/2]

template<typename Float , int length>
quda::gauge::LegacyOrder< Float, length >::LegacyOrder ( const LegacyOrder< Float, length > &  order)
inline

Definition at line 2202 of file gauge_field_order.h.

Member Function Documentation

◆ Ghost() [1/2]

template<typename Float , int length>
__device__ __host__ gauge_ghost_wrapper<real, Accessor> quda::gauge::LegacyOrder< Float, length >::Ghost ( int  dim,
int  ghost_idx,
int  parity,
real  phase = 1.0 
)
inline

This accessor routine returns a gauge_ghost_wrapper to this object, allowing us to overload various operators for manipulating at the site level interms of matrix operations.

Parameters
[in]dirWhich dimension are we requesting
[in]ghost_idxGhost index we are requesting
[in]parityParity we are requesting
Returns
Instance of a gauge_ghost_wrapper that curries in access to this field at the above coordinates.

Definition at line 2256 of file gauge_field_order.h.

◆ Ghost() [2/2]

template<typename Float , int length>
__device__ __host__ const gauge_ghost_wrapper<real, Accessor> quda::gauge::LegacyOrder< Float, length >::Ghost ( int  dim,
int  ghost_idx,
int  parity,
real  phase = 1.0 
) const
inline

This accessor routine returns a const gauge_ghost_wrapper to this object, allowing us to overload various operators for manipulating at the site level interms of matrix operations.

Parameters
[in]dirWhich dimension are we requesting
[in]ghost_idxGhost index we are requesting
[in]parityParity we are requesting
Returns
Instance of a gauge_ghost_wrapper that curries in access to this field at the above coordinates.

Definition at line 2272 of file gauge_field_order.h.

◆ loadGhost()

template<typename Float , int length>
__device__ __host__ void quda::gauge::LegacyOrder< Float, length >::loadGhost ( complex  v[length/2],
int  x,
int  dir,
int  parity,
real  phase = 1.0 
) const
inline

Definition at line 2214 of file gauge_field_order.h.

◆ loadGhostEx()

template<typename Float , int length>
__device__ __host__ void quda::gauge::LegacyOrder< Float, length >::loadGhostEx ( complex  v[length/2],
int  x,
int  dummy,
int  dir,
int  dim,
int  g,
int  parity,
const int  R[] 
) const
inline

Definition at line 2278 of file gauge_field_order.h.

◆ saveGhost()

template<typename Float , int length>
__device__ __host__ void quda::gauge::LegacyOrder< Float, length >::saveGhost ( const complex  v[length/2],
int  x,
int  dir,
int  parity 
)
inline

Definition at line 2226 of file gauge_field_order.h.

◆ saveGhostEx()

template<typename Float , int length>
__device__ __host__ void quda::gauge::LegacyOrder< Float, length >::saveGhostEx ( const complex  v[length/2],
int  x,
int  dummy,
int  dir,
int  dim,
int  g,
int  parity,
const int  R[] 
)
inline

Definition at line 2291 of file gauge_field_order.h.

Member Data Documentation

◆ faceVolumeCB

template<typename Float , int length>
int quda::gauge::LegacyOrder< Float, length >::faceVolumeCB[QUDA_MAX_DIM]

Definition at line 2181 of file gauge_field_order.h.

◆ geometry

template<typename Float , int length>
const int quda::gauge::LegacyOrder< Float, length >::geometry

Definition at line 2184 of file gauge_field_order.h.

◆ ghost

template<typename Float , int length>
Float* quda::gauge::LegacyOrder< Float, length >::ghost[QUDA_MAX_DIM]

Definition at line 2180 of file gauge_field_order.h.

◆ hasPhase

template<typename Float , int length>
const int quda::gauge::LegacyOrder< Float, length >::hasPhase

Definition at line 2185 of file gauge_field_order.h.

◆ stride

template<typename Float , int length>
const int quda::gauge::LegacyOrder< Float, length >::stride

Definition at line 2183 of file gauge_field_order.h.

◆ volumeCB

template<typename Float , int length>
const int quda::gauge::LegacyOrder< Float, length >::volumeCB

Definition at line 2182 of file gauge_field_order.h.


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