21 const string str_vlevel = params.
get_string(
"verbose_level");
29 err += params.
fetch_int(
"number_of_noises", Nnoise);
83 Field xi(Nin, Nvol, Nex);
84 Field v1(Nin, Nvol, Nex), v2(Nin, Nvol, Nex), v3(Nin, Nvol, Nex);
86 dcomplex tr1 = cmplx(0.0, 0.0);
87 dcomplex tr2 = cmplx(0.0, 0.0);
88 dcomplex tr3 = cmplx(0.0, 0.0);
90 for (
int i_noise = 0; i_noise <
m_Nnoise; ++i_noise) {
106 dcomplex tr_c1 =
dotc(xi, v1);
107 dcomplex tr_c2 =
dotc(xi, v2);
109 dcomplex tr1_c = tr_c1 - tr_c2;
110 dcomplex tr2_c = tr_c1 + tr_c2;
129 dcomplex tr3_c =
dotc(xi, v1);
140 tr1 = tr1 / cmplx(
double(m_Nnoise), 0.0);
141 tr2 = tr2 / cmplx(
double(m_Nnoise), 0.0);
142 tr3 = tr3 / cmplx(
double(m_Nnoise), 0.0);
static const std::string class_name
void general(const char *format,...)
Container of Field-type object.
virtual void set(Field &v)=0
setting a noise vector.
virtual int field_nin()=0
returns the on-site d.o.f. for which the fermion operator is defined.
Bridge::VerboseLevel m_vl
virtual void invert_D(Field &, const Field &, int &, double &)=0
dcomplex dotc(const Field &y, const Field &x)
int fetch_int(const string &key, int &value) const
virtual int field_nex()=0
returns the external d.o.f. for which the fermion operator is defined.
virtual void mult_dn(const int mu, Field &, const Field &)
virtual void mult_up(const int mu, Field &, const Field &)
nearest neighbor hopping term: temporary entry [H.Matsufuru]
double measure()
measure tr1 = Tr[D1*Sq], tr2 = Tr[D2*Sq], tr3 = Tr[D1*Sq*D1*Sq].
void axpy(Field &y, const double a, const Field &x)
axpy(y, a, x): y := a * x + y
void crucial(const char *format,...)
void set_parameters(const Parameters ¶ms)
int non_negative(const int v)
string get_string(const string &key) const
virtual int field_nvol()=0
returns the volume for which the fermion operator is defined.
static VerboseLevel set_verbose_level(const std::string &str)