Go to the documentation of this file.
31 const int Niter = 100;
32 const int Nrestart = 40;
33 const double Stop_cond = 1.0e-24;
34 const std::string solver_type =
"CG";
56 const int Niter = 100;
57 const int Nrestart = 40;
58 const double Stop_cond = 1.0e-24;
59 const std::string solver_type =
"CG";
118 assert(NvolF == Nvol);
124 Field xi(NinF, NvolF, NexF);
136 const double xi2 = xi.
norm();
137 const double H_psf = xi2 * xi2;
162 Field v1(NinF, NvolF, NexF);
179 const double H_psf1 =
dot(v1,
m_psf);
182 if (ith == 0) H_psf = H_psf1;
196 const int Nin =
m_U->
nin();
198 const int Nex =
m_U->
nex();
202 assert(
force.nin() == Nin);
203 assert(
force.nvol() == Nvol);
204 assert(
force.nex() == Nex);
213 Field eta(NinF, NvolF, NexF);
237 double Fave, Fmax, Fdev;
238 force.stat(Fave, Fmax, Fdev);
void set_string(const string &key, const string &value)
static const std::string class_name
virtual void mult(AFIELD &, const AFIELD &)
multiplies fermion operator to a given field.
virtual int field_nex()=0
returns the external degree of freedom of the fermion field.
Base class of random number generators.
virtual void set_parameters(const Parameters ¶ms)=0
void get_parameters(Parameters &) const
double dot(const Field &y, const Field &x)
virtual void set_mode(std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
void set_config(Field *U)
setting pointer to the gauge configuration.
void copy(Field &y, const Field &x)
copy(y, x): y = x
virtual void set_config(Field *)=0
sets the gauge configuration.
virtual void solve(Field &solution, const Field &source, int &Nconv, double &diff)=0
void set_boundary_zero(Field_G &u)
virtual int field_nvol()=0
returns the volume of the fermion field.
Bridge::VerboseLevel m_vl
void reset(const int Nin, const int Nvol, const int Nex, const element_type cmpl=Element_type::COMPLEX)
virtual void set_config(Field *)=0
sets verbose level.
void set_boundary_spatial_link_zero(Field_G &u)
double langevin(RandomNumbers *)
Langevis step.
virtual void force_core(AFIELD &, const AFIELD &)
double calcH()
calculate Hamiltonian of this action term.
static Bridge::VerboseLevel Vlevel()
static VerboseLevel set_verbose_level(const std::string &str)
int fetch_string(const string &key, string &value) const
Container of Field-type object.
virtual void gauss_lex_global(Field &)
gaussian random number defined on global lattice.
virtual int field_nin()=0
returns the on-site degree of freedom of the fermion field.
static int get_thread_id()
returns thread id.
void force(Field &)
returns force for molcular dynamical update of conjugate momenta.
void general(const char *format,...)
static void assert_single_thread(const std::string &class_name)
assert currently running on single thread.
static std::string get_verbose_level(const VerboseLevel vl)