QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | List of all members
quda::BQCDOrder< Float, length > Struct Template Reference

#include <clover_field_order.h>

+ Inheritance diagram for quda::BQCDOrder< Float, length >:

Public Types

typedef mapper< Float >::type RegType
 
typedef mapper< Float >::type RegType
 
- Public Types inherited from quda::LegacyOrder< Float, length >
typedef mapper< Float >::type RegType
 

Public Member Functions

 BQCDOrder (const CloverField &clover, bool inverse, Float *clover_=0)
 
bool Twisted () const
 
Float Mu2 () const
 
__device__ __host__ void load (RegType v[length], int x, int parity) const
 
__device__ __host__ void save (RegType v[length], int x, int parity)
 
size_t Bytes () const
 
 BQCDOrder (const GaugeField &u, Float *gauge_=0, Float **ghost_=0)
 
 BQCDOrder (const BQCDOrder &order)
 
virtual ~BQCDOrder ()
 
__device__ __host__ void load (RegType v[18], int x, int dir, int parity) const
 
__device__ __host__ void save (const RegType v[18], int x, int dir, int parity)
 
size_t Bytes () const
 
- Public Member Functions inherited from quda::LegacyOrder< Float, length >
 LegacyOrder (const GaugeField &u, Float **ghost_)
 
 LegacyOrder (const LegacyOrder &order)
 
virtual ~LegacyOrder ()
 
__device__ __host__ void loadGhost (RegType v[length], int x, int dir, int parity) const
 
__device__ __host__ void saveGhost (const RegType v[length], int x, int dir, int parity)
 
__device__ __host__ void loadGhostEx (RegType v[length], int x, int dummy, int dir, int dim, int g, int parity, const int R[]) const
 
__device__ __host__ void saveGhostEx (const RegType v[length], int x, int dummy, int dir, int dim, int g, int parity, const int R[])
 

Public Attributes

Float * clover [2]
 
const int volumeCB
 
const int stride
 
const bool twisted
 
const Float mu2
 
Float * gauge
 
int exVolumeCB
 
const int Nc
 
- Public Attributes inherited from quda::LegacyOrder< Float, length >
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::BQCDOrder< Float, length >

BQCD ordering for clover fields struct for reordering a BQCD clover matrix into the order that is expected by QUDA. As well as reordering the clover matrix elements, we are also changing basis.

struct to define BQCD ordered gauge fields: [mu][parity][volumecb+halos][col][row]

Definition at line 242 of file clover_field_order.h.

Member Typedef Documentation

template<typename Float , int length>
typedef mapper<Float>::type quda::BQCDOrder< Float, length >::RegType

Definition at line 243 of file clover_field_order.h.

template<typename Float , int length>
typedef mapper<Float>::type quda::BQCDOrder< Float, length >::RegType

Definition at line 832 of file gauge_field_order.h.

Constructor & Destructor Documentation

template<typename Float , int length>
quda::BQCDOrder< Float, length >::BQCDOrder ( const CloverField clover,
bool  inverse,
Float *  clover_ = 0 
)
inline

Definition at line 253 of file clover_field_order.h.

template<typename Float , int length>
quda::BQCDOrder< Float, length >::BQCDOrder ( const GaugeField u,
Float *  gauge_ = 0,
Float **  ghost_ = 0 
)
inline

Definition at line 837 of file gauge_field_order.h.

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

Definition at line 844 of file gauge_field_order.h.

template<typename Float , int length>
virtual quda::BQCDOrder< Float, length >::~BQCDOrder ( )
inlinevirtual

Definition at line 849 of file gauge_field_order.h.

Member Function Documentation

template<typename Float , int length>
size_t quda::BQCDOrder< Float, length >::Bytes ( ) const
inline

Definition at line 299 of file clover_field_order.h.

template<typename Float , int length>
size_t quda::BQCDOrder< Float, length >::Bytes ( ) const
inline

Definition at line 872 of file gauge_field_order.h.

template<typename Float , int length>
__device__ __host__ void quda::BQCDOrder< Float, length >::load ( RegType  v[length],
int  x,
int  parity 
) const
inline
Parameters
vThe output clover matrix in QUDA order
xThe checkerboarded lattice site
parityThe parity of the lattice site

Definition at line 271 of file clover_field_order.h.

template<typename Float , int length>
__device__ __host__ void quda::BQCDOrder< Float, length >::load ( RegType  v[18],
int  x,
int  dir,
int  parity 
) const
inline

Definition at line 852 of file gauge_field_order.h.

template<typename Float , int length>
Float quda::BQCDOrder< Float, length >::Mu2 ( ) const
inline

Definition at line 261 of file clover_field_order.h.

template<typename Float , int length>
__device__ __host__ void quda::BQCDOrder< Float, length >::save ( RegType  v[length],
int  x,
int  parity 
)
inline

Definition at line 295 of file clover_field_order.h.

template<typename Float , int length>
__device__ __host__ void quda::BQCDOrder< Float, length >::save ( const RegType  v[18],
int  x,
int  dir,
int  parity 
)
inline

Definition at line 862 of file gauge_field_order.h.

template<typename Float , int length>
bool quda::BQCDOrder< Float, length >::Twisted ( ) const
inline

Definition at line 260 of file clover_field_order.h.

Member Data Documentation

template<typename Float , int length>
Float* quda::BQCDOrder< Float, length >::clover[2]

Definition at line 244 of file clover_field_order.h.

template<typename Float , int length>
int quda::BQCDOrder< Float, length >::exVolumeCB

Definition at line 835 of file gauge_field_order.h.

template<typename Float , int length>
Float* quda::BQCDOrder< Float, length >::gauge

Definition at line 833 of file gauge_field_order.h.

template<typename Float , int length>
const Float quda::BQCDOrder< Float, length >::mu2

Definition at line 251 of file clover_field_order.h.

template<typename Float , int length>
const int quda::BQCDOrder< Float, length >::Nc

Definition at line 836 of file gauge_field_order.h.

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

Definition at line 246 of file clover_field_order.h.

template<typename Float , int length>
const bool quda::BQCDOrder< Float, length >::twisted

Definition at line 250 of file clover_field_order.h.

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

Definition at line 245 of file clover_field_order.h.


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