Go to the documentation of this file.
15 #ifndef FIELD_F_1SPINOR_INCLUDED
16 #define FIELD_F_1SPINOR_INCLUDED
45 int myindex(
const int c2,
const int site,
const int ex)
const
79 double cmp_r(
const int cc,
const int site,
const int e = 0)
const
81 return field[myindex(2 * cc, site, e)];
84 double cmp_i(
const int cc,
const int site,
const int e = 0)
const
86 return field[myindex(2 * cc + 1, site, e)];
89 void set_r(
const int cc,
const int site,
const int e,
const double re)
91 field[myindex(2 * cc, site, e)] = re;
94 void set_i(
const int cc,
const int site,
const int e,
const double im)
96 field[myindex(2 * cc + 1, site, e)] = im;
99 void set_ri(
const int cc,
const int site,
const int e,
const double re,
const double im)
101 field[myindex(2 * cc, site, e)] = re;
102 field[myindex(2 * cc + 1, site, e)] = im;
109 for (
int cc = 0; cc < m_Nc; ++cc) {
111 field[myindex(2 * cc, site, e)],
112 field[myindex(2 * cc + 1, site, e)]);
119 for (
int cc = 0; cc < m_Nc; ++cc) {
120 field[myindex(2 * cc, site, e)] = F.
r(cc);
121 field[myindex(2 * cc + 1, site, e)] = F.
i(cc);
127 for (
int cc = 0; cc < m_Nc; ++cc) {
128 field[myindex(2 * cc, site, e)] += F.
r(cc);
129 field[myindex(2 * cc + 1, site, e)] += F.
i(cc);
135 for (
int cc = 0; cc < m_Nc2; ++cc) {
136 field[myindex(cc, site, e)] = 0.0;
size_t myindex(const int jin, const int site, const int jex) const
void set_i(const int cc, const int site, const int e, const double im)
void clear_vec(const int site, const int e)
Common parameter class: provides parameters as singleton.
double cmp_r(const int cc, const int site, const int e=0) const
void reset(int Nvol, int Nex)
void set_ri(const int cc, const int site, const int e, const double re, const double im)
void set_r(const int cc, const int site, const int e, const double re)
void set(const int c, const double re, const double im)
double i(const int c) const
Field_F_1spinor(const int Nvol=CommonParameters::Nvol(), const int Nex=1)
void copy(Field &y, const Field &x)
copy(y, x): y = x
Field_F_1spinor(const Field &x)
void mult_Field_Gd(Field_F_1spinor &y, const int ex, const Field_G &u, int ex1, const Field_F_1spinor &x, int ex2)
y=U^\dagger*x
Vec_SU_N vec(const int site, const int e=0) const
Field_F_1spinor & operator=(const Field_F_1spinor &v)
void mult_Field_Gn(Field_F_1spinor &y, const int ex, const Field_G &u, int ex1, const Field_F_1spinor &x, int ex2)
y=U*x
void add_vec(const int site, const int e, const Vec_SU_N &F)
double cmp_i(const int cc, const int site, const int e=0) const
void reset(const int Nin, const int Nvol, const int Nex, const element_type cmpl=Element_type::COMPLEX)
int myindex(const int c2, const int site, const int ex) const
Staggered-type fermion field.
void set_vec(const int site, const int e, const Vec_SU_N &F)
Container of Field-type object.
double r(const int c) const