37   for (
int mu = 0; mu < 
m_Nex; ++mu) {
 
   38     for (
int site = 0; site < 
m_Nvol; ++site) {
 
   52   for (
int mu = 0; mu < 
m_Nex; ++mu) {
 
   53     for (
int site = 0; site < 
m_Nvol; ++site) {
 
   54       this->
mat(ut, site, mu);
 
   74   for (
int mu = 0; mu < 
m_Nex; ++mu) {
 
   75     for (
int site = 0; site < 
m_Nvol; ++site) {
 
   86                     const Field_G& U1, 
const int ex1,
 
   87                     const Field_G& U2, 
const int ex2)
 
   90   assert(ex1 < U1.
nex());
 
   91   assert(ex2 < U2.
nex());
 
   95   const int Nvol = W.
nvol();
 
   97   for (
int site = 0; site < Nvol; ++site) {
 
  105                     const Field_G& U1, 
const int ex1,
 
  106                     const Field_G& U2, 
const int ex2)
 
  108   assert(ex < W.
nex());
 
  109   assert(ex1 < U1.
nex());
 
  110   assert(ex2 < U2.
nex());
 
  114   const int Nvol = W.
nvol();
 
  116   for (
int site = 0; site < Nvol; ++site) {
 
  124                     const Field_G& U1, 
const int ex1,
 
  125                     const Field_G& U2, 
const int ex2)
 
  127   assert(ex < W.
nex());
 
  128   assert(ex1 < U1.
nex());
 
  129   assert(ex2 < U2.
nex());
 
  133   const int Nvol = W.
nvol();
 
  135   for (
int site = 0; site < Nvol; ++site) {
 
  143                     const Field_G& U1, 
const int ex1,
 
  144                     const Field_G& U2, 
const int ex2)
 
  146   assert(ex < W.
nex());
 
  147   assert(ex1 < U1.
nex());
 
  148   assert(ex2 < U2.
nex());
 
  152   const int Nvol = W.
nvol();
 
  154   for (
int site = 0; site < Nvol; ++site) {
 
  162                        const Field_G& U1, 
const int ex1,
 
  163                        const Field_G& U2, 
const int ex2,
 
  166   assert(ex < W.
nex());
 
  167   assert(ex1 < U1.
nex());
 
  168   assert(ex2 < U2.
nex());
 
  172   const int Nvol = W.
nvol();
 
  174   for (
int site = 0; site < Nvol; ++site) {
 
  175     W.
add_mat(site, ex, U1.
mat(site, ex1) * U2.
mat(site, ex2) * ff);
 
  182                        const Field_G& U1, 
const int ex1,
 
  183                        const Field_G& U2, 
const int ex2,
 
  186   assert(ex < W.
nex());
 
  187   assert(ex1 < U1.
nex());
 
  188   assert(ex2 < U2.
nex());
 
  192   const int Nvol = W.
nvol();
 
  194   for (
int site = 0; site < Nvol; ++site) {
 
  202                        const Field_G& U1, 
const int ex1,
 
  203                        const Field_G& U2, 
const int ex2,
 
  206   assert(ex < W.
nex());
 
  207   assert(ex1 < U1.
nex());
 
  208   assert(ex2 < U2.
nex());
 
  212   const int Nvol = W.
nvol();
 
  214   for (
int site = 0; site < Nvol; ++site) {
 
  222                        const Field_G& U1, 
const int ex1,
 
  223                        const Field_G& U2, 
const int ex2,
 
  226   assert(ex < W.
nex());
 
  227   assert(ex1 < U1.
nex());
 
  228   assert(ex2 < U2.
nex());
 
  232   const int Nvol = W.
nvol();
 
  234   for (
int site = 0; site < Nvol; ++site) {
 
  243   assert(ex < W.
nex());
 
  245   const int Nvol = W.
nvol();
 
  247   for (
int site = 0; site < Nvol; ++site) {
 
  256   assert(ex < W.
nex());
 
  258   const int Nvol = W.
nvol();
 
  260   for (
int site = 0; site < Nvol; ++site) {
 
  277   for (
int ex = 0; ex < Nex; ++ex) {
 
  278     for (
int site = 0; site < Nvol; ++site) {
 
  279       u0 = U.
mat(site, ex);
 
  280       v0 = iP.
mat(site, ex);
 
void ah_Field_G(Field_G &W, const int ex)
 
void mult_Field_Gnd(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2)
 
void multadd_Field_Gnn(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2, const double ff)
 
void mult_Field_Gdn(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2)
 
void mult_Field_Gnn(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2)
 
void mult_exp_Field_G(Field_G &W, const double alpha, const Field_G &iP, const Field_G &U, const int Nprec)
 
void multadd_Field_Gdd(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2, const double ff)
 
void check()
check of assumptions for performance implementation. 
 
Mat_SU_N & at()
antihermitian traceless 
 
void mult_Field_Gdd(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2)
 
virtual void gauss_lex_global(Field &)
gaussian random number defined on global lattice. 
 
void set_random(RandomNumbers *rand)
 
Mat_SU_N & ah()
antihermitian 
 
void multadd_Field_Gdn(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2, const double ff)
 
void multadd_Field_Gnd(Field_G &W, const int ex, const Field_G &U1, const int ex1, const Field_G &U2, const int ex2, const double ff)
 
void at_Field_G(Field_G &W, const int ex)
 
Base class of random number generators. 
 
Mat_SU_N mat_exp(const double alpha, const Mat_SU_N &iv, const Mat_SU_N &u, const int Nprec)
 
Mat_SU_N mat_dag(const int site, const int mn=0) const 
 
void set_mat(const int site, const int mn, const Mat_SU_N &U)
 
Mat_SU_N mat(const int site, const int mn=0) const 
 
void add_mat(const int site, const int mn, const Mat_SU_N &U)