|
47 | 47 | #include "phmc.h"
|
48 | 48 | #include "hybrid_update.h"
|
49 | 49 |
|
50 |
| - |
51 |
| - |
52 |
| - |
53 | 50 | /*----------------------------------------------------------------------------*/
|
54 | 51 |
|
55 | 52 | /*******************************************
|
@@ -94,111 +91,3 @@ double moment_energy(su3adj ** const momenta) {
|
94 | 91 | #endif
|
95 | 92 | }
|
96 | 93 |
|
97 |
| -/*----------------------------------------------------------------------------*/ |
98 |
| - |
99 |
| -/************************************** |
100 |
| - * |
101 |
| - * Initialises the momenta |
102 |
| - * with the gaussian distribution |
103 |
| - * |
104 |
| - **************************************/ |
105 |
| -double init_momenta(const int repro, su3adj ** const momenta) { |
106 |
| - |
107 |
| - su3adj *xm; |
108 |
| - int i, mu, t0, x, y, z, X, Y, Z, t, id = 0; |
109 |
| - int coords[4]; |
110 |
| -#ifdef MPI |
111 |
| - int k; |
112 |
| - int rlxd_state[105]; |
113 |
| -#endif |
114 |
| - double ALIGN yy[8]; |
115 |
| - double ALIGN tt, tr, ts, kc = 0., ks = 0., sum; |
116 |
| - |
117 |
| - if(repro) { |
118 |
| -#ifdef MPI |
119 |
| - if(g_proc_id == 0) { |
120 |
| - rlxd_get(rlxd_state); |
121 |
| - } |
122 |
| - MPI_Bcast(rlxd_state, 105, MPI_INT, 0, MPI_COMM_WORLD); |
123 |
| - rlxd_reset(rlxd_state); |
124 |
| -#endif |
125 |
| - for(t0 = 0; t0 < g_nproc_t*T; t0++) { |
126 |
| - t = t0 - T*g_proc_coords[0]; |
127 |
| - coords[0] = t0 / T; |
128 |
| - for(x = 0; x < g_nproc_x*LX; x++) { |
129 |
| - X = x - g_proc_coords[1]*LX; |
130 |
| - coords[1] = x / LX; |
131 |
| - for(y = 0; y < g_nproc_y*LY; y++) { |
132 |
| - Y = y - g_proc_coords[2]*LY; |
133 |
| - coords[2] = y / LY; |
134 |
| - for(z = 0; z < g_nproc_z*LZ; z++) { |
135 |
| - Z = z - g_proc_coords[3]*LZ; |
136 |
| - coords[3] = z / LZ; |
137 |
| -#ifdef MPI |
138 |
| - MPI_Cart_rank(g_cart_grid, coords, &id); |
139 |
| -#endif |
140 |
| - if(g_cart_id == id) i = g_ipt[t][X][Y][Z]; |
141 |
| - for(mu = 0; mu < 4; mu++) { |
142 |
| - gauss_vector(yy,8); |
143 |
| - if(g_cart_id == id) { |
144 |
| - sum = 0.; |
145 |
| - xm = &momenta[i][mu]; |
146 |
| - (*xm).d1 = 1.4142135623731*yy[0]; |
147 |
| - (*xm).d2 = 1.4142135623731*yy[1]; |
148 |
| - sum += (*xm).d1*(*xm).d1+(*xm).d2*(*xm).d2; |
149 |
| - (*xm).d3 = 1.4142135623731*yy[2]; |
150 |
| - (*xm).d4 = 1.4142135623731*yy[3]; |
151 |
| - sum += (*xm).d3*(*xm).d3+(*xm).d4*(*xm).d4; |
152 |
| - (*xm).d5 = 1.4142135623731*yy[4]; |
153 |
| - (*xm).d6 = 1.4142135623731*yy[5]; |
154 |
| - sum += (*xm).d5*(*xm).d5+(*xm).d6*(*xm).d6; |
155 |
| - (*xm).d7 = 1.4142135623731*yy[6]; |
156 |
| - (*xm).d8 = 1.4142135623731*yy[7]; |
157 |
| - sum += (*xm).d7*(*xm).d7+(*xm).d8*(*xm).d8; |
158 |
| - tr = sum+kc; |
159 |
| - ts = tr+ks; |
160 |
| - tt = ts-ks; |
161 |
| - ks = ts; |
162 |
| - kc = tr-tt; |
163 |
| - } |
164 |
| - } |
165 |
| - } |
166 |
| - } |
167 |
| - } |
168 |
| - } |
169 |
| - kc=0.5*(ks+kc); |
170 |
| - } |
171 |
| - else { |
172 |
| - for(i = 0; i < VOLUME; i++) { |
173 |
| - for(mu = 0; mu < 4; mu++) { |
174 |
| - sum=0.; |
175 |
| - xm=&momenta[i][mu]; |
176 |
| - gauss_vector(yy,8); |
177 |
| - (*xm).d1=1.4142135623731*yy[0]; |
178 |
| - (*xm).d2=1.4142135623731*yy[1]; |
179 |
| - sum+=(*xm).d1*(*xm).d1+(*xm).d2*(*xm).d2; |
180 |
| - (*xm).d3=1.4142135623731*yy[2]; |
181 |
| - (*xm).d4=1.4142135623731*yy[3]; |
182 |
| - sum+=(*xm).d3*(*xm).d3+(*xm).d4*(*xm).d4; |
183 |
| - (*xm).d5=1.4142135623731*yy[4]; |
184 |
| - (*xm).d6=1.4142135623731*yy[5]; |
185 |
| - sum+=(*xm).d5*(*xm).d5+(*xm).d6*(*xm).d6; |
186 |
| - (*xm).d7=1.4142135623731*yy[6]; |
187 |
| - (*xm).d8=1.4142135623731*yy[7]; |
188 |
| - sum+=(*xm).d7*(*xm).d7+(*xm).d8*(*xm).d8; |
189 |
| - tr=sum+kc; |
190 |
| - ts=tr+ks; |
191 |
| - tt=ts-ks; |
192 |
| - ks=ts; |
193 |
| - kc=tr-tt; |
194 |
| - } |
195 |
| - } |
196 |
| - kc=0.5*(ks+kc); |
197 |
| - } |
198 |
| -#ifdef MPI |
199 |
| - MPI_Allreduce(&kc, &ks, 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); |
200 |
| - return ks; |
201 |
| -#endif |
202 |
| - return kc; |
203 |
| -} |
204 |
| - |
0 commit comments