16 #ifdef USE_PARAMETERS_FACTORY 
   32 #ifdef USE_PARAMETERS_FACTORY 
   47   const string str_vlevel = params.
get_string(
"verbose_level");
 
   52   double c_plaq, c_rect;
 
   92   static const double PI   = 4.0 * atan(1.0);
 
   93   static const double PI2  = PI * PI;
 
   96   std::vector<Field_G> Fmunu_1x1(6), Fmunu_1x2(6);
 
  102   for (
int mu = 0; mu < Ndim; ++mu) {
 
  103     for (
int nu = mu + 1; nu < Ndim; ++nu) {
 
  139                Q_1x1 / (32.0 * PI2),
 
  140                Q_1x2 / (2.0 * (32.0 * PI2)));
 
  151                                             const int mu, 
const int nu, 
Field_G& U)
 
  157   Field_G Cup(Nvol, 1), Cdn(Nvol, 1);
 
  159   Field_G v(Nvol, 1), v2(Nvol, 1);
 
  167   staple.
upper(Cup, U, mu, nu);
 
  173   staple.
lower(Cdn, U, mu, nu);
 
  208   axpy(Fmunu_1x1, 1.0, v2);
 
  212   scal(Fmunu_1x1, -0.25);
 
  219                                             const int mu, 
const int nu, 
Field_G& U)
 
  225   Field_G Cup1(Nvol, 1), Cup2(Nvol, 1);
 
  226   Field_G Cdn1(Nvol, 1), Cdn2(Nvol, 1);
 
  227   Field_G Umu(Nvol, 1), Unu(Nvol, 1);
 
  228   Field_G Umu_nu(Nvol, 1), Unu_mu(Nvol, 1);
 
  230   Field_G v(Nvol, 1), w(Nvol, 1), c(Nvol, 1);
 
  237   staple.
upper(Cup1, U, mu, nu);
 
  243   staple.
upper(Cup2, U, nu, mu);
 
  249   staple.
lower(Cdn1, U, mu, nu);
 
  255   staple.
lower(Cdn2, U, nu, mu);
 
  257   Umu.setpart_ex(0, U, mu);
 
  298   axpy(Fmunu_1x2, 1.0, v);
 
  318   axpy(Fmunu_1x2, 1.0, v);
 
  339   axpy(Fmunu_1x2, 1.0, v);
 
  360   axpy(Fmunu_1x2, 1.0, rect);
 
  384   axpy(Fmunu_1x2, 1.0, v);
 
  408   axpy(Fmunu_1x2, 1.0, v);
 
  433   axpy(Fmunu_1x2, 1.0, v);
 
  438   scal(Fmunu_1x2, -0.25);
 
  450   for (
int site = 0; site < Nvol; ++site) {
 
  451     Q_topo += 
ReTr(Fmunu_1.
mat(site) * Fmunu_2.
mat(site));
 
void scal(Field &x, const double a)
scal(x, a): x = a * x 
 
void Register_string(const string &, const string &)
 
void mult_Field_Gdn(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2)
 
static const std::string class_name
 
void general(const char *format,...)
 
double measure(Field_G &U)
main function to measure Topological Charge. 
 
Parameters_TopologicalCharge()
 
void construct_Fmunu_1x2(Field_G &Fmunu, int mu, int nu, Field_G &U)
 
void construct_Fmunu_1x1(Field_G &Fmunu, int mu, int nu, Field_G &U)
 
void mult_Field_Gdd(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2)
 
double contract_epsilon_tensor(Field_G &Fmunu_1, Field_G &Fmunu_2)
 
void ah_Field_G(Field_G &w, const int ex)
 
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 mult_Field_Gnd(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 backward(Field &, const Field &, const int mu)
 
void paranoiac(const char *format,...)
 
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 axpy(Field &y, const double a, const Field &x)
axpy(y, a, x): y := a * x + y 
 
void crucial(const char *format,...)
 
void lower(Field_G &, const Field_G &, const int mu, const int nu)
constructs lower staple in mu-nu plane. 
 
static bool Register(const std::string &realm, const creator_callback &cb)
 
Bridge::VerboseLevel m_vl
 
virtual void set_parameters(const Parameters ¶ms)
setting parameters. 
 
static int reduce_sum(int count, double *recv_buf, double *send_buf, int pattern=0)
make a global sum of an array of double over the communicator. pattern specifies the dimensions to be...
 
void Register_double(const string &, const double)
 
void setpart_ex(int ex, const Field &w, int exw)
 
int fetch_double(const string &key, double &val) const 
 
string get_string(const string &key) const 
 
Mat_SU_N mat(const int site, const int mn=0) const 
 
void upper(Field_G &, const Field_G &, const int mu, const int nu)
constructs upper staple in mu-nu plane. 
 
static VerboseLevel set_verbose_level(const std::string &str)
 
double ReTr(const Mat_SU_N &m)
 
void forward(Field &, const Field &, const int mu)