QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
quda::GaugeField Class Reference

#include <gauge_field.h>

+ Inheritance diagram for quda::GaugeField:

Public Member Functions

 GaugeField (const GaugeFieldParam &param)
 
virtual ~GaugeField ()
 
int Length () const
 
int Ncolor () const
 
QudaReconstructType Reconstruct () const
 
QudaGaugeFieldOrder Order () const
 
double Anisotropy () const
 
double Tadpole () const
 
double Scale () const
 
QudaTboundary TBoundary () const
 
QudaLinkType LinkType () const
 
QudaGaugeFixed GaugeFixed () const
 
QudaGaugeFieldOrder FieldOrder () const
 
QudaFieldGeometry Geometry () const
 
const int * R () const
 
QudaGhostExchange GhostExchange () const
 
QudaStaggeredPhase StaggeredPhase () const
 
void applyStaggeredPhase ()
 
void removeStaggeredPhase ()
 
const double & LinkMax () const
 
int Nface () const
 
void checkField (const GaugeField &)
 
size_t Bytes () const
 
size_t PhaseBytes () const
 
size_t PhaseOffset () const
 
virtual void * Gauge_p ()
 
virtual void * Even_p ()
 
virtual void * Odd_p ()
 
virtual const void * Gauge_p () const
 
virtual const void * Even_p () const
 
virtual const void * Odd_p () const
 
const void ** Ghost () const
 
- Public Member Functions inherited from quda::LatticeField
 LatticeField (const LatticeFieldParam &param)
 
virtual ~LatticeField ()
 
int Ndim () const
 
const int * X () const
 
int Volume () const
 
int VolumeCB () const
 
const int * SurfaceCB () const
 
int SurfaceCB (const int i) const
 
int Stride () const
 
int Pad () const
 
int Nvec () const
 
QudaPrecision Precision () const
 
QudaFieldLocation Location () const
 
size_t GBytes () const
 
void checkField (const LatticeField &)
 
virtual void pack (int nFace, int parity, int dagger, cudaStream_t *stream_p, bool zeroCopyPack, double a=0, double b=0)
 
virtual void gather (int nFace, int dagger, int dir, cudaStream_t *stream_p=NULL)
 
virtual void commsStart (int nFace, int dir, int dagger=0)
 
virtual int commsQuery (int nFace, int dir, int dagger=0)
 
virtual void scatter (int nFace, int dagger, int dir)
 
const char * VolString () const
 

Protected Member Functions

bool isNative () const
 
- Protected Member Functions inherited from quda::LatticeField
void resizeBufferPinned (size_t bytes, const int index=0) const
 
void resizeBufferDevice (size_t bytes) const
 
virtual void setTuningString ()
 

Protected Attributes

size_t bytes
 
int phase_offset
 
int phase_bytes
 
int length
 
int real_length
 
int nColor
 
int nFace
 
QudaFieldGeometry geometry
 
QudaReconstructType reconstruct
 
QudaGaugeFieldOrder order
 
QudaGaugeFixed fixed
 
QudaLinkType link_type
 
QudaTboundary t_boundary
 
double anisotropy
 
double tadpole
 
double fat_link_max
 
double scale
 
QudaFieldCreate create
 
int r [QUDA_MAX_DIM]
 
QudaGhostExchange ghostExchange
 
void * ghost [QUDA_MAX_DIM]
 
QudaStaggeredPhase staggeredPhaseType
 
bool staggeredPhaseApplied
 
- Protected Attributes inherited from quda::LatticeField
int volume
 
int volumeCB
 
int stride
 
int pad
 
size_t total_bytes
 
int nDim
 
int x [QUDA_MAX_DIM]
 
int surface [QUDA_MAX_DIM]
 
int surfaceCB [QUDA_MAX_DIM]
 
QudaPrecision precision
 
QudaSiteSubset siteSubset
 
int nDimComms
 
void * my_face [2]
 
void * my_fwd_face [2][QUDA_MAX_DIM]
 
void * my_back_face [2][QUDA_MAX_DIM]
 
void * from_face [2]
 
void * from_back_face [2][QUDA_MAX_DIM]
 
void * from_fwd_face [2][QUDA_MAX_DIM]
 
MsgHandle *** mh_recv_fwd [2]
 
MsgHandle *** mh_recv_back [2]
 
MsgHandle *** mh_send_fwd [2]
 
MsgHandle *** mh_send_back [2]
 
char vol_string [TuneKey::volume_n]
 

Additional Inherited Members

- Static Public Member Functions inherited from quda::LatticeField
static void freeBuffer (int index=0)
 
- Static Protected Attributes inherited from quda::LatticeField
static void * bufferPinned [2] = {NULL}
 
static bool bufferPinnedInit [2] = {false}
 
static size_t bufferPinnedBytes [2] = {0}
 
static size_t bufferPinnedResizeCount = 0
 
static void * bufferDevice = NULL
 
static bool bufferDeviceInit = false
 
static size_t bufferDeviceBytes = 0
 

Detailed Description

Definition at line 118 of file gauge_field.h.

Constructor & Destructor Documentation

quda::GaugeField::GaugeField ( const GaugeFieldParam param)

Definition at line 6 of file gauge_field.cpp.

quda::GaugeField::~GaugeField ( )
virtual

Definition at line 62 of file gauge_field.cpp.

Member Function Documentation

double quda::GaugeField::Anisotropy ( ) const
inline

Definition at line 170 of file gauge_field.h.

void quda::GaugeField::applyStaggeredPhase ( )

Apply the staggered phase factors to the gauge field.

Definition at line 66 of file gauge_field.cpp.

size_t quda::GaugeField::Bytes ( ) const
inline

Definition at line 197 of file gauge_field.h.

void quda::GaugeField::checkField ( const GaugeField a)

Definition at line 110 of file gauge_field.cpp.

virtual void* quda::GaugeField::Even_p ( )
inlinevirtual

Reimplemented in quda::cudaGaugeField.

Definition at line 202 of file gauge_field.h.

virtual const void* quda::GaugeField::Even_p ( ) const
inlinevirtual

Reimplemented in quda::cudaGaugeField.

Definition at line 206 of file gauge_field.h.

QudaGaugeFieldOrder quda::GaugeField::FieldOrder ( ) const
inline

Definition at line 176 of file gauge_field.h.

virtual void* quda::GaugeField::Gauge_p ( )
inlinevirtual

Reimplemented in quda::cpuGaugeField, and quda::cudaGaugeField.

Definition at line 201 of file gauge_field.h.

virtual const void* quda::GaugeField::Gauge_p ( ) const
inlinevirtual

Reimplemented in quda::cpuGaugeField, and quda::cudaGaugeField.

Definition at line 205 of file gauge_field.h.

QudaGaugeFixed quda::GaugeField::GaugeFixed ( ) const
inline

Definition at line 175 of file gauge_field.h.

QudaFieldGeometry quda::GaugeField::Geometry ( ) const
inline

Definition at line 177 of file gauge_field.h.

const void** quda::GaugeField::Ghost ( ) const
inline

Definition at line 209 of file gauge_field.h.

QudaGhostExchange quda::GaugeField::GhostExchange ( ) const
inline

Definition at line 179 of file gauge_field.h.

bool quda::GaugeField::isNative ( ) const
protected

This function returns true if the field is stored in an internal field order for the given precision.

Definition at line 92 of file gauge_field.cpp.

int quda::GaugeField::Length ( ) const
inline

Definition at line 166 of file gauge_field.h.

const double& quda::GaugeField::LinkMax ( ) const
inline

Definition at line 192 of file gauge_field.h.

QudaLinkType quda::GaugeField::LinkType ( ) const
inline

Definition at line 174 of file gauge_field.h.

int quda::GaugeField::Ncolor ( ) const
inline

Definition at line 167 of file gauge_field.h.

int quda::GaugeField::Nface ( ) const
inline

Definition at line 193 of file gauge_field.h.

virtual void* quda::GaugeField::Odd_p ( )
inlinevirtual

Reimplemented in quda::cudaGaugeField.

Definition at line 203 of file gauge_field.h.

virtual const void* quda::GaugeField::Odd_p ( ) const
inlinevirtual

Reimplemented in quda::cudaGaugeField.

Definition at line 207 of file gauge_field.h.

QudaGaugeFieldOrder quda::GaugeField::Order ( ) const
inline

Definition at line 169 of file gauge_field.h.

size_t quda::GaugeField::PhaseBytes ( ) const
inline

Definition at line 198 of file gauge_field.h.

size_t quda::GaugeField::PhaseOffset ( ) const
inline

Definition at line 199 of file gauge_field.h.

const int* quda::GaugeField::R ( ) const
inline

Definition at line 178 of file gauge_field.h.

QudaReconstructType quda::GaugeField::Reconstruct ( ) const
inline

Definition at line 168 of file gauge_field.h.

void quda::GaugeField::removeStaggeredPhase ( )

Remove the staggered phase factors from the gauge field.

Definition at line 79 of file gauge_field.cpp.

double quda::GaugeField::Scale ( ) const
inline

Definition at line 172 of file gauge_field.h.

QudaStaggeredPhase quda::GaugeField::StaggeredPhase ( ) const
inline

Definition at line 180 of file gauge_field.h.

double quda::GaugeField::Tadpole ( ) const
inline

Definition at line 171 of file gauge_field.h.

QudaTboundary quda::GaugeField::TBoundary ( ) const
inline

Definition at line 173 of file gauge_field.h.

Member Data Documentation

double quda::GaugeField::anisotropy
protected

Definition at line 136 of file gauge_field.h.

size_t quda::GaugeField::bytes
protected

Definition at line 121 of file gauge_field.h.

QudaFieldCreate quda::GaugeField::create
protected

Definition at line 142 of file gauge_field.h.

double quda::GaugeField::fat_link_max
protected

Definition at line 138 of file gauge_field.h.

QudaGaugeFixed quda::GaugeField::fixed
protected

Definition at line 132 of file gauge_field.h.

QudaFieldGeometry quda::GaugeField::geometry
protected

Definition at line 128 of file gauge_field.h.

void* quda::GaugeField::ghost[QUDA_MAX_DIM]
mutableprotected

Definition at line 148 of file gauge_field.h.

QudaGhostExchange quda::GaugeField::ghostExchange
protected

Definition at line 147 of file gauge_field.h.

int quda::GaugeField::length
protected

Definition at line 124 of file gauge_field.h.

QudaLinkType quda::GaugeField::link_type
protected

Definition at line 133 of file gauge_field.h.

int quda::GaugeField::nColor
protected

Definition at line 126 of file gauge_field.h.

int quda::GaugeField::nFace
protected

Definition at line 127 of file gauge_field.h.

QudaGaugeFieldOrder quda::GaugeField::order
protected

Definition at line 131 of file gauge_field.h.

int quda::GaugeField::phase_bytes
protected

Definition at line 123 of file gauge_field.h.

int quda::GaugeField::phase_offset
protected

Definition at line 122 of file gauge_field.h.

int quda::GaugeField::r[QUDA_MAX_DIM]
protected

Array storing the length of dimension

Definition at line 145 of file gauge_field.h.

int quda::GaugeField::real_length
protected

Definition at line 125 of file gauge_field.h.

QudaReconstructType quda::GaugeField::reconstruct
protected

Definition at line 130 of file gauge_field.h.

double quda::GaugeField::scale
protected

Definition at line 139 of file gauge_field.h.

bool quda::GaugeField::staggeredPhaseApplied
protected

Whether the staggered phase factor has been applied

Definition at line 154 of file gauge_field.h.

QudaStaggeredPhase quda::GaugeField::staggeredPhaseType
protected

The staggered phase convention to use

Definition at line 151 of file gauge_field.h.

QudaTboundary quda::GaugeField::t_boundary
protected

Definition at line 134 of file gauge_field.h.

double quda::GaugeField::tadpole
protected

Definition at line 137 of file gauge_field.h.


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