su2hmc
|
Matrix multiplication and related routines. More...
Go to the source code of this file.
Functions | |
int | Dslash (Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, Complex_f jqq, float akappa) |
Evaluates \(\Phi=M r\) in double precision. | |
int | Dslashd (Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, Complex_f jqq, float akappa) |
Evaluates \(\Phi=M^\dagger r\) in double precision. | |
int | Hdslash (Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, float akappa) |
Evaluates \(\Phi=M r\) in double precision. | |
int | Hdslashd (Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, float akappa) |
Evaluates \(\Phi=M^\dagger r\) in double precision. | |
int | Dslash_f (Complex_f *phi, Complex_f *r, Complex_f *u11t_f, Complex_f *u12t_f, unsigned int *iu, unsigned int *id, Complex_f *gamval_f, int *gamin, float *dk4m_f, float *dk4p_f, Complex_f jqq, float akappa) |
Evaluates \(\Phi=M r\) in single precision. | |
int | Dslashd_f (Complex_f *phi, Complex_f *r, Complex_f *u11t_f, Complex_f *u12t_f, unsigned int *iu, unsigned int *id, Complex_f *gamval_f, int *gamin, float *dk4m_f, float *dk4p_f, Complex_f jqq, float akappa) |
Evaluates \(\Phi=M^\dagger r\) in single precision. | |
int | Hdslash_f (Complex_f *phi, Complex_f *r, Complex_f *u11t_f, Complex_f *u12t_f, unsigned int *iu, unsigned int *id, Complex_f *gamval_f, int *gamin, float *dk4m_f, float *dk4p_f, float akappa) |
Evaluates \(\Phi=M r\) in single precision. | |
int | Hdslashd_f (Complex_f *phi, Complex_f *r, Complex_f *u11t_f, Complex_f *u12t_f, unsigned int *iu, unsigned int *id, Complex_f *gamval_f, int *gamin, float *dk4m_f, float *dk4p_f, float akappa) |
Evaluates \(\Phi=M^\dagger r\) in single precision. | |
int | Reunitarise (Complex *u11t, Complex *u12t) |
Reunitarises u11t and u12t as in conj(u11t[i])*u11t[i]+conj(u12t[i])*u12t[i]=1. | |
Matrix multiplication and related routines.
There are two four matrix mutiplication routines, and each had a double and single (_f) version The Hdslash? routines are called when acting on half of the fermions (up/down flavour partitioning) The Dslash routines act on everything
Any routine ending in a d is the daggered multiplication
Definition in file matrices.c.
int Dslash | ( | Complex * | phi, |
Complex * | r, | ||
Complex * | u11t, | ||
Complex * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex * | gamval, | ||
int * | gamin, | ||
double * | dk4m, | ||
double * | dk4p, | ||
Complex_f | jqq, | ||
float | akappa ) |
Evaluates \(\Phi=M r\) in double precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
jqq | Diquark source |
akappa | Hopping parameter |
Definition at line 18 of file matrices.c.
References Complex, kferm, kvol, nc, ndim, ndirac, ngorkov, and ZHalo_swap_all().
int Dslash_f | ( | Complex_f * | phi, |
Complex_f * | r, | ||
Complex_f * | u11t, | ||
Complex_f * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex_f * | gamval, | ||
int * | gamin, | ||
float * | dk4m, | ||
float * | dk4p, | ||
Complex_f | jqq, | ||
float | akappa ) |
Evaluates \(\Phi=M r\) in single precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
jqq | Diquark source |
akappa | Hopping parameter |
Definition at line 462 of file matrices.c.
References CHalo_swap_all(), Complex_f, kferm, kvol, nc, ndim, ndirac, and ngorkov.
int Dslashd | ( | Complex * | phi, |
Complex * | r, | ||
Complex * | u11t, | ||
Complex * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex * | gamval, | ||
int * | gamin, | ||
double * | dk4m, | ||
double * | dk4p, | ||
Complex_f | jqq, | ||
float | akappa ) |
Evaluates \(\Phi=M^\dagger r\) in double precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
jqq | Diquark source |
akappa | Hopping parameter |
Definition at line 140 of file matrices.c.
References Complex, kferm, kvol, nc, ndim, ndirac, ngorkov, and ZHalo_swap_all().
int Dslashd_f | ( | Complex_f * | phi, |
Complex_f * | r, | ||
Complex_f * | u11t, | ||
Complex_f * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex_f * | gamval, | ||
int * | gamin, | ||
float * | dk4m, | ||
float * | dk4p, | ||
Complex_f | jqq, | ||
float | akappa ) |
Evaluates \(\Phi=M^\dagger r\) in single precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
jqq | Diquark source |
akappa | Hopping parameter |
Definition at line 584 of file matrices.c.
References CHalo_swap_all(), Complex_f, kferm, kvol, nc, ndim, ndirac, and ngorkov.
int Hdslash | ( | Complex * | phi, |
Complex * | r, | ||
Complex * | u11t, | ||
Complex * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex * | gamval, | ||
int * | gamin, | ||
double * | dk4m, | ||
double * | dk4p, | ||
float | akappa ) |
Evaluates \(\Phi=M r\) in double precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
akappa | Hopping parameter |
Definition at line 267 of file matrices.c.
References Complex, kferm2, kvol, nc, ndim, ndirac, and ZHalo_swap_all().
int Hdslash_f | ( | Complex_f * | phi, |
Complex_f * | r, | ||
Complex_f * | u11t, | ||
Complex_f * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex_f * | gamval, | ||
int * | gamin, | ||
float * | dk4m, | ||
float * | dk4p, | ||
float | akappa ) |
Evaluates \(\Phi=M r\) in single precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
akappa | Hopping parameter |
Definition at line 711 of file matrices.c.
References CHalo_swap_all(), Complex_f, kferm2, kvol, nc, ndim, and ndirac.
int Hdslashd | ( | Complex * | phi, |
Complex * | r, | ||
Complex * | u11t, | ||
Complex * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex * | gamval, | ||
int * | gamin, | ||
double * | dk4m, | ||
double * | dk4p, | ||
float | akappa ) |
Evaluates \(\Phi=M^\dagger r\) in double precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
akappa | Hopping parameter |
Definition at line 358 of file matrices.c.
References Complex, kferm2, kvol, nc, ndim, ndirac, and ZHalo_swap_all().
int Hdslashd_f | ( | Complex_f * | phi, |
Complex_f * | r, | ||
Complex_f * | u11t, | ||
Complex_f * | u12t, | ||
unsigned int * | iu, | ||
unsigned int * | id, | ||
Complex_f * | gamval, | ||
int * | gamin, | ||
float * | dk4m, | ||
float * | dk4p, | ||
float | akappa ) |
Evaluates \(\Phi=M^\dagger r\) in single precision.
phi | The product |
r | The array being acted on by M |
u11t | First colour trial field |
u12t | Second colour trial field |
iu | Upper halo indices |
id | Lower halo indices |
gamval | Gamma matrices rescaled by kappa |
gamin | Indices for dirac terms |
dk4m | \(\left(1+\gamma_0\right)e^{-\mu}\) |
dk4p | \(\left(1-\gamma_0\right)e^\mu\) |
akappa | Hopping parameter |
Definition at line 802 of file matrices.c.
References CHalo_swap_all(), Complex_f, kferm2, kvol, nc, ndim, and ndirac.
Reunitarises u11t and u12t as in conj(u11t[i])*u11t[i]+conj(u12t[i])*u12t[i]=1.
If you're looking at the FORTRAN code be careful. There are two header files for the /trial/ header. One with u11 u12 (which was included here originally) and the other with u11t and u12t.
u11t,u12t | Trial fields to be reunitarised |
Definition at line 904 of file matrices.c.