staggared quark propagator More...
#include <fermiqcd_staggered_propagator.h>
Public Member Functions | |
staggered_propagator (mdp_lattice &mylattice, int nc_) | |
mdp_matrix | operator() (site x, int a) |
mdp_complex & | operator() (site x, int a, int i, int j) |
Public Attributes | |
int | nc |
Friends | |
void | generate (staggered_propagator &S, gauge_field &U, coefficients &coeff, mdp_real absolute_precision=fermi_inversion_precision, mdp_real relative_precision=0, int max_steps=2000, void(*smf)(staggered_field &, gauge_field &)=0, int comp=0) |
staggared quark propagator
On a (2n) dimensional lattice this makes 3*(2^n) sources at the vertices of the hypercube at the origin of the lattice and inverts the Staggered/Asqtad action on them.
Example:
/// mdp_gauge U(lattice,nc); /// staggered_propagator S(lattice,nc); /// mdp_site x(lattice); /// mdp_site y(lattice); /// coefficients coeff; /// coeff["mass"]=1.0; /// generate(S,U,coeff); /// for(int i=0; i<(int) pow(2,lattice.ndim); i++) { /// x=binary2versor(a); /// cout << "source at:" << x << "\nprop:\n"; /// forallsites(y) cout << S(x,a) << endl; /// } ///
staggered_propagator::staggered_propagator | ( | mdp_lattice & | mylattice, | |
int | nc_ | |||
) | [inline] |
mdp_complex& staggered_propagator::operator() | ( | site | x, | |
int | a, | |||
int | i, | |||
int | j | |||
) | [inline] |
mdp_matrix staggered_propagator::operator() | ( | site | x, | |
int | a | |||
) | [inline] |
void generate | ( | staggered_propagator & | S, | |
gauge_field & | U, | |||
coefficients & | coeff, | |||
mdp_real | absolute_precision = fermi_inversion_precision , |
|||
mdp_real | relative_precision = 0 , |
|||
int | max_steps = 2000 , |
|||
void(*)(staggered_field &, gauge_field &) | smf = 0 , |
|||
int | comp = 0 | |||
) | [friend] |