42 valarray<int> id(
m_Nd);
43 valarray<int> idc_r(
m_Nd);
44 valarray<int> idc_i(
m_Nd);
45 valarray<double> gv_r(
m_Nd);
46 valarray<double> gv_i(
m_Nd);
48 for (
int s = 0; s <
m_Nd; ++s) {
53 idc_i[s] = 1 - idc_r[s];
56 for (
int ex = 0; ex <
m_Nex; ++ex) {
57 for (
int site = 0; site <
m_Nvol; ++site) {
58 for (
int s = 0; s <
m_Nd; ++s) {
59 for (
int c = 0; c <
m_Nc; ++c) {
61 = gv_r[s] * w.
field[
myindex(2 * c + idc_r[s],
id[s], site, ex)];
63 = gv_i[s] * w.
field[
myindex(2 * c + idc_i[s],
id[s], site, ex)];
77 valarray<int> id(m_Nd);
78 valarray<int> idc_r(m_Nd);
79 valarray<int> idc_i(m_Nd);
80 valarray<double> gv_r(m_Nd);
81 valarray<double> gv_i(m_Nd);
83 for (
int s = 0; s <
m_Nd; ++s) {
88 idc_i[s] = 1 - idc_r[s];
91 for (
int ex = 0; ex <
m_Nex; ++ex) {
92 for (
int site = 0; site <
m_Nvol; ++site) {
93 for (
int s = 0; s <
m_Nd; ++s) {
94 for (
int c = 0; c <
m_Nc; ++c) {
96 = gv_r[s] * w.
field[
myindex(2 * c + idc_r[s],
id[s], site, ex)];
98 = gv_i[s] * w.
field[
myindex(2 * c + idc_i[s],
id[s], site, ex)];
118 for (
int i = 0; i <
size; ++i) {
121 }
else if (pm == -1) {
122 for (
int i = 0; i <
size; ++i) {
144 for (
int i = 0; i <
size; ++i) {
147 }
else if (pm == -1) {
148 for (
int i = 0; i <
size; ++i) {
163 assert(ex1 < U.
nex());
164 assert(ex2 < x.
nex());
170 for (
int site = 0; site <
m_Nvol; ++site) {
171 for (
int s = 0; s <
m_Nd; ++s) {
172 vec = U.
mat(site, ex1) * x.
vec(s, site, ex2);
173 for (
int cc = 0; cc <
m_Nc; ++cc) {
187 assert(ex1 < U.
nex());
188 assert(ex2 < x.
nex());
194 for (
int site = 0; site <
m_Nvol; ++site) {
195 for (
int s = 0; s <
m_Nd; ++s) {
197 for (
int cc = 0; cc <
m_Nc; ++cc) {
208 const Field_F& x,
int ex2,
double a)
211 assert(ex1 < U.
nex());
212 assert(ex2 < x.
nex());
218 for (
int site = 0; site <
m_Nvol; ++site) {
219 for (
int s = 0; s <
m_Nd; ++s) {
220 vec = U.
mat(site, ex1) * x.
vec(s, site, ex2);
221 for (
int cc = 0; cc <
m_Nc; ++cc) {
232 const Field_F& x,
int ex2,
double a)
235 assert(ex1 < U.
nex());
236 assert(ex2 < x.
nex());
242 for (
int site = 0; site <
m_Nvol; ++site) {
243 for (
int s = 0; s <
m_Nd; ++s) {
245 for (
int cc = 0; cc <
m_Nc; ++cc) {