QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros | Functions
llfat_reference.cpp File Reference
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <quda.h>
#include <test_util.h>
#include "llfat_reference.h"
#include "misc.h"
#include <string.h>
#include <quda_internal.h>
#include "face_quda.h"

Go to the source code of this file.

Classes

struct  fcomplex
 
struct  dcomplex
 
struct  fsu3_matrix
 
struct  fsu3_vector
 
struct  dsu3_matrix
 
struct  dsu3_vector
 

Macros

#define XUP   0
 
#define YUP   1
 
#define ZUP   2
 
#define TUP   3
 
#define CADD(a, b, c)
 
#define CMUL(a, b, c)
 
#define CSUM(a, b)   { (a).real += (b).real; (a).imag += (b).imag; }
 
#define CMULJ_(a, b, c)
 
#define CMUL_J(a, b, c)
 

Functions

template<typename su3_matrix , typename Real >
void llfat_scalar_mult_su3_matrix (su3_matrix *a, Real s, su3_matrix *b)
 
template<typename su3_matrix , typename Real >
void llfat_scalar_mult_add_su3_matrix (su3_matrix *a, su3_matrix *b, Real s, su3_matrix *c)
 
template<typename su3_matrix >
void llfat_mult_su3_na (su3_matrix *a, su3_matrix *b, su3_matrix *c)
 
template<typename su3_matrix >
void llfat_mult_su3_nn (su3_matrix *a, su3_matrix *b, su3_matrix *c)
 
template<typename su3_matrix >
void llfat_mult_su3_an (su3_matrix *a, su3_matrix *b, su3_matrix *c)
 
template<typename su3_matrix >
void llfat_add_su3_matrix (su3_matrix *a, su3_matrix *b, su3_matrix *c)
 
template<typename su3_matrix , typename Real >
void llfat_compute_gen_staple_field (su3_matrix *staple, int mu, int nu, su3_matrix *mulink, su3_matrix **sitelink, void **fatlink, Real coef, int use_staple)
 
template<typename su3_matrix , typename Float >
void llfat_cpu (void **fatlink, su3_matrix **sitelink, Float *act_path_coeff)
 
template<typename su3_matrix , typename Float >
void computeLongLinkCPU (void **longlink, su3_matrix **sitelink, Float *act_path_coeff)
 
void computeLongLinkCPU (void **longlink, void **sitelink, QudaPrecision prec, void *act_path_coeff)
 
void llfat_reference (void **fatlink, void **sitelink, QudaPrecision prec, void *act_path_coeff)
 

Macro Definition Documentation

#define CADD (   a,
  b,
 
)
Value:
{ (c).real = (a).real + (b).real; \
(c).imag = (a).imag + (b).imag; }

Definition at line 36 of file llfat_reference.cpp.

#define CMUL (   a,
  b,
 
)
Value:
{ (c).real = (a).real*(b).real - (a).imag*(b).imag; \
(c).imag = (a).real*(b).imag + (a).imag*(b).real; }

Definition at line 38 of file llfat_reference.cpp.

#define CMUL_J (   a,
  b,
 
)
Value:
{ (c).real = (a).real*(b).real + (a).imag*(b).imag; \
(c).imag = (a).imag*(b).real - (a).real*(b).imag; }

Definition at line 47 of file llfat_reference.cpp.

#define CMULJ_ (   a,
  b,
 
)
Value:
{ (c).real = (a).real*(b).real + (a).imag*(b).imag; \
(c).imag = (a).real*(b).imag - (a).imag*(b).real; }

Definition at line 43 of file llfat_reference.cpp.

#define CSUM (   a,
 
)    { (a).real += (b).real; (a).imag += (b).imag; }

Definition at line 40 of file llfat_reference.cpp.

#define TUP   3

Definition at line 17 of file llfat_reference.cpp.

#define XUP   0

Definition at line 14 of file llfat_reference.cpp.

#define YUP   1

Definition at line 15 of file llfat_reference.cpp.

#define ZUP   2

Definition at line 16 of file llfat_reference.cpp.

Function Documentation

template<typename su3_matrix , typename Float >
void computeLongLinkCPU ( void **  longlink,
su3_matrix **  sitelink,
Float *  act_path_coeff 
)

Definition at line 328 of file llfat_reference.cpp.

void computeLongLinkCPU ( void **  longlink,
void **  sitelink,
QudaPrecision  prec,
void *  act_path_coeff 
)

Definition at line 389 of file llfat_reference.cpp.

template<typename su3_matrix >
void llfat_add_su3_matrix ( su3_matrix *  a,
su3_matrix *  b,
su3_matrix *  c 
)

Definition at line 133 of file llfat_reference.cpp.

template<typename su3_matrix , typename Real >
void llfat_compute_gen_staple_field ( su3_matrix *  staple,
int  mu,
int  nu,
su3_matrix *  mulink,
su3_matrix **  sitelink,
void **  fatlink,
Real  coef,
int  use_staple 
)

Definition at line 145 of file llfat_reference.cpp.

template<typename su3_matrix , typename Float >
void llfat_cpu ( void **  fatlink,
su3_matrix **  sitelink,
Float *  act_path_coeff 
)

Definition at line 260 of file llfat_reference.cpp.

template<typename su3_matrix >
void llfat_mult_su3_an ( su3_matrix *  a,
su3_matrix *  b,
su3_matrix *  c 
)

Definition at line 113 of file llfat_reference.cpp.

template<typename su3_matrix >
void llfat_mult_su3_na ( su3_matrix *  a,
su3_matrix *  b,
su3_matrix *  c 
)

Definition at line 81 of file llfat_reference.cpp.

template<typename su3_matrix >
void llfat_mult_su3_nn ( su3_matrix *  a,
su3_matrix *  b,
su3_matrix *  c 
)

Definition at line 97 of file llfat_reference.cpp.

void llfat_reference ( void **  fatlink,
void **  sitelink,
QudaPrecision  prec,
void *  act_path_coeff 
)

Definition at line 411 of file llfat_reference.cpp.

template<typename su3_matrix , typename Real >
void llfat_scalar_mult_add_su3_matrix ( su3_matrix *  a,
su3_matrix *  b,
Real  s,
su3_matrix *  c 
)

Definition at line 69 of file llfat_reference.cpp.

template<typename su3_matrix , typename Real >
void llfat_scalar_mult_su3_matrix ( su3_matrix *  a,
Real  s,
su3_matrix *  b 
)

Definition at line 55 of file llfat_reference.cpp.