32 for (
int site = 0; site <
m_Svol; ++site) {
33 for (
int cc = 0; cc <
m_Nc *
m_Nc; ++cc) {
59 for (
int cc = 0; cc <
m_Nc *
m_Nc; ++cc) {
83 for (
int site = 0; site <
m_Svol; ++site) {
84 for (
int cc = 0; cc < 2 *
m_Nc *
m_Nc; ++cc) {
105 for (
int mn = 0; mn < 3; ++mn) {
106 for (
int site = 0; site <
m_Svol; ++site) {
107 for (
int cc = 0; cc < 2 *
m_Nc *
m_Nc; ++cc) {
135 for (
int site = ini; site < fin; ++site) {
136 for (
int cc = 0; cc < 2 *
m_Nc *
m_Nc; ++cc) {
159 assert(f.
nex() == 1);
161 for (
int site = 0; site <
m_Svol; ++site) {
183 assert(f.
nex() == 1);
207 assert(f.
nex() == 1);
209 for (
int site = 0; site <
m_Svol; ++site) {
210 for (
int cc = 0; cc <
m_Nc *
m_Nc; ++cc) {
211 f.
set_ri(cc, site, mn, 0.0, 0.0);
231 assert(f.
nex() >= 3);
233 for (
int mn = 0; mn < 3; ++mn) {
234 for (
int site = 0; site <
m_Svol; ++site) {
235 for (
int cc = 0; cc <
m_Nc *
m_Nc; ++cc) {
236 f.
set_ri(cc, site, mn, 0.0, 0.0);
246 const std::vector<double>& phipr)
251 for (
int i = 0; i < 3; ++i) {
253 aphipr[i] = phipr[i];
265 double c0r = cos(phi[0] / Lx);
266 double c0i = sin(phi[0] / Lx);
267 double c1r = cos(phi[1] / Lx);
268 double c1i = sin(phi[1] / Lx);
269 double c2r = cos(phi[2] / Lx);
270 double c2i = sin(phi[2] / Lx);
277 c0r = cos(phipr[0] / Lx);
278 c0i = sin(phipr[0] / Lx);
279 c1r = cos(phipr[1] / Lx);
280 c1i = sin(phipr[1] / Lx);
281 c2r = cos(phipr[2] / Lx);
282 c2i = sin(phipr[2] / Lx);
void set_boundary_zero()
Set the boundary matrix to 0 for SF bc.
void set_boundary_wkpr(const Mat_SU_N &U)
Set the boundary spatial link at t=Nt-1 for SF bc.
size_t myindex(const int jin, const int site, const int jex) const
static int ipe(const int dir)
logical coordinate of current proc.
void set_boundary_spatial_link_zero()
Set the boundary spatial link to 0 for SF bc.
Mat_SU_N m_wk
SF boundary condition at t=0.
void set_parameters(const std::vector< double > &phi, const std::vector< double > &phipr)
Set the parameter by giving vector objects.
void mult_ct_boundary(const int t, const double ct)
Multiply the boundary improvement factor ct or ctr to an SU(N) matrix object which belongs to a site ...
void set_boundary_wk(const Mat_SU_N &U)
Set the boundary spatial link at t=0 for SF bc.
std::valarray< double > field
Mat_SU_N m_wkpr
SF boundary condition at t=Nt.
int m_Nc
number of color elements
int m_Nvol
number of sites
void set(int c, double re, const double &im)
void set_mat(const int site, const int mn, const Mat_SU_N &U)
void set_ri(const int cc, const int site, const int mn, const double re, const double im)