Go to the documentation of this file.
28 std::vector<double> sigma;
33 err += params.
fetch_int(
"number_of_shifts", Nshift);
35 err += params.
fetch_int(
"maximum_number_of_iteration", Niter);
36 err += params.
fetch_double(
"convergence_criterion_squared", Stop_cond);
62 const int Niter,
const double Stop_cond)
67 for (
int i = 0; i < Nshift; ++i) {
97 const int Nin = b.
nin();
98 const int Nvol = b.
nvol();
99 const int Nex = b.
nex();
103 std::vector<double> sigma =
m_sigma;
105 std::vector<Field> xq(Nshift);
107 for (
int i = 0; i < Nshift; ++i) {
108 xq[i].reset(Nin, Nvol, Nex);
120 assert(xq2->size() == sigma.size());
145 for (
int i = 0; i < Nshift; ++i) {
147 double sg = sigma[i];
156 for (
int i = 0; i < Nshift; ++i) {
160 const double result = diff1;
double invert_D(std::vector< Field_F > *, const Field_F &)
void set_mode(const std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
void set_string(const string &key, const string &value)
void set_double(const string &key, const double value)
void axpy(Field &y, const double a, const Field &x)
axpy(y, a, x): y := a * x + y
double dot(const Field &y, const Field &x)
void set_double_vector(const string &key, const vector< double > &value)
int square_non_zero(const double v)
void mult(Field &v, const Field &w)
multiplies fermion operator to a given field.
int solver(const std::string &)
std::vector< double > m_sigma
static VerboseLevel set_verbose_level(const std::string &str)
int non_zero(const double v)
void set_int(const string &key, const int value)
int fetch_string(const string &key, string &value) const
Wilson-type fermion field.
int fetch_double(const string &key, double &value) const
Bridge::VerboseLevel m_vl
void set_parameters(const Parameters ¶ms)
void crucial(const char *format,...)
Container of Field-type object.
Multishift Conjugate Gradient solver.
int fetch_double_vector(const string &key, vector< double > &value) const
int fetch_int(const string &key, int &value) const
void general(const char *format,...)
void get_parameters(Parameters ¶ms) const
static const std::string class_name
static std::string get_verbose_level(const VerboseLevel vl)