20 write(xml_out,
"Random_volume_source" ,
"Z2NOISE");
22 }
else if( volume_source ==
GAUSSIAN ){
23 write(xml_out,
"Random_volume_source" ,
"GAUSSIAN");
26 write(xml_out,
"Random_volume_source" ,
"T_DILUTE_GAUSS");
29 write(xml_out,
"Random_volume_source" ,
"C_DILUTE_GAUSS");
32 write(xml_out,
"Random_volume_source" ,
"P_DILUTE_GAUSS");
35 write(xml_out,
"Random_volume_source" ,
"CT_DILUTE_GAUSS");
38 write(xml_out,
"Random_volume_source" ,
"CP_DILUTE_GAUSS");
41 write(xml_out,
"Random_volume_source" ,
"PT_DILUTE_GAUSS");
44 write(xml_out,
"Random_volume_source" ,
"MOD_T_DILUTE_GAUSS");
47 write(xml_out,
"Random_volume_source" ,
"CORNER_DILUTE_GAUSS");
50 write(xml_out,
"Random_volume_source" ,
"COR_DBL_T_DILUTE_GAUSS");
53 write(xml_out,
"Random_volume_source" ,
"COR_MOD_DBL_T_DILUTE_GAUSS");
56 write(xml_out,
"Random_volume_source" ,
"C_MOD_T_DILUTE_GAUSS");
67 int *p_src_tslice,
int *p_src_color_ind,
68 int *p_src_parity_ind,
int *p_src_corner_ind,
69 int src_seperation,
int j_decay){
73 Real coverage_fraction;
77 }
else if( volume_source ==
Z2NOISE ){
83 if((*p_src_tslice)>=t_length){
86 coverage_fraction=1.0/t_length;
91 if((*p_src_color_ind) >= Nc){
94 coverage_fraction=1.0/Nc;
98 (*p_src_parity_ind)++;
99 if((*p_src_parity_ind) > 1){
100 (*p_src_parity_ind) = 0;
102 coverage_fraction=1.0/2;
108 if((*p_src_tslice)>=t_length){
110 (*p_src_color_ind)++;
111 if((*p_src_color_ind) >=Nc){
112 (*p_src_color_ind)=0;
115 coverage_fraction=1.0/(Nc*t_length);
119 (*p_src_parity_ind));
120 (*p_src_parity_ind)++;
121 if((*p_src_parity_ind) > 1){
122 (*p_src_parity_ind)=0;
123 (*p_src_color_ind)++;
124 if((*p_src_color_ind)>=Nc){
125 (*p_src_color_ind)=0;
128 coverage_fraction=1.0/(2*Nc);
133 (*p_src_parity_ind)++;
134 if((*p_src_parity_ind) > 1){
135 (*p_src_parity_ind)=0;
137 if((*p_src_tslice) >= t_length){
141 coverage_fraction=1.0/(2*t_length);
147 if((*p_src_tslice)>=t_length){
150 if(t_length%src_seperation==0){
151 coverage_fraction=(1.0/(src_seperation));
153 coverage_fraction=9999999;
158 (*p_src_corner_ind)++;
159 if((*p_src_corner_ind)>=16){
160 (*p_src_corner_ind)=0;
162 coverage_fraction=1.0/16;
167 (*p_src_corner_ind)++;
168 if((*p_src_corner_ind) >= 16){
169 (*p_src_corner_ind) = 0;
171 if((*p_src_tslice)>=t_length){
175 coverage_fraction=1.0/(16*t_length);
181 (*p_src_corner_ind)++;
182 if((*p_src_corner_ind) >= 16){
183 (*p_src_corner_ind)=0;
185 if((*p_src_tslice)>=t_length){
189 if(t_length%src_seperation==0){
190 coverage_fraction=1.0/(2*Nc);
192 coverage_fraction=9999999;
197 (*p_src_tslice),
j_decay, src_seperation);
199 if((*p_src_tslice)>=t_length){
201 (*p_src_color_ind)++;
202 if((*p_src_color_ind)>=Nc){
203 (*p_src_color_ind) = 0;
207 coverage_fraction=1.0/(Nc*t_length);
231 return coverage_fraction;
243 LatticeStaggeredFermion & q_source,
244 LatticeStaggeredFermion &
psi ,
245 const multi1d<LatticeColorMatrix> &
u,
249 bool loop_checkpoint,
260 push(xml_out,
"local_loops_s");
267 write(xml_out,
"Number_of_samples" , Nsamp);
316 int src_color_ind = 0;
317 int src_parity_ind = 0;
318 int src_corner_ind =0;
320 Real coverage_fraction;
322 for(
int i = 0;
i < Nsamp; ++
i){
325 QDPIO::cout <<
"SEED = " << seed << std::endl;
327 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
331 t_length, &src_tslice,
332 &src_color_ind, &src_parity_ind,
333 &src_corner_ind, src_seperation,
340 push(xml_out,
"Qprop_noise");
341 write(xml_out,
"Noise_number" ,
i);
344 write(xml_out,
"Seed" , seed);
361 scalar_one_loop.
dump(xml_out,
i) ;
362 scalar_one_kilcup_loop.
dump(xml_out,
i);
363 scalar_two_loop.
dump(xml_out,
i) ;
364 scalar_four_loop.
dump(xml_out,
i) ;
365 scalar_four_kilcup_loop.
dump(xml_out,
i) ;
366 eta3_loop.
dump(xml_out,
i) ;
367 eta4_loop.
dump(xml_out,
i) ;
368 eta4_kilcup_loop.
dump(xml_out,
i) ;
369 eta0_loop.
dump(xml_out,
i) ;
376 scalar_one_loop.
dump(xml_out) ;
377 scalar_one_kilcup_loop.
dump(xml_out);
378 scalar_two_loop.
dump(xml_out) ;
379 scalar_four_loop.
dump(xml_out) ;
380 scalar_four_kilcup_loop.
dump(xml_out) ;
381 eta3_loop.
dump(xml_out) ;
382 eta4_loop.
dump(xml_out) ;
383 eta4_kilcup_loop.
dump(xml_out) ;
384 eta0_loop.
dump(xml_out) ;
400 LatticeStaggeredFermion & q_source,
401 LatticeStaggeredFermion &
psi ,
402 multi1d<LatticeColorMatrix> &
u,
403 XMLFileWriter & xml_out,
415 int src_color_ind = 0;
416 int src_parity_ind = 0;
417 int src_corner_ind =0;
418 Real coverage_fraction;
420 push(xml_out,
"ks_local_loops");
427 write(xml_out,
"Number_of_samples" , Nsamp);
436 bool loop_checkpoint;
439 read(xml_in,
"/propagator/param/use_gauge_invar_oper", gauge_shift ) ;
441 QDPIO::cerr <<
"Error reading data: " << e << std::endl;
445 read(xml_in,
"/propagator/param/use_sym_shift_oper", sym_shift ) ;
447 QDPIO::cerr <<
"Error reading data: " << e << std::endl;
451 read(xml_in,
"/propagator/param/loop_checkpoint", loop_checkpoint ) ;
453 QDPIO::cerr <<
"Error reading data: " << e << std::endl;
500 for(
int i = 0;
i < Nsamp; ++
i){
503 QDPIO::cout <<
"SEED = " << seed << std::endl;
505 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
510 t_length, &src_tslice,
511 &src_color_ind, &src_parity_ind,
512 &src_corner_ind, src_seperation,
518 push(xml_out,
"Qprop_noise");
519 write(xml_out,
"Noise_number" ,
i);
522 write(xml_out,
"Seed" , seed);
539 scalar_one_loop.
dump(xml_out,
i) ;
540 scalar_one_kilcup_loop.
dump(xml_out,
i);
541 scalar_two_loop.
dump(xml_out,
i) ;
542 scalar_four_loop.
dump(xml_out,
i) ;
543 scalar_four_kilcup_loop.
dump(xml_out,
i) ;
544 eta3_loop.
dump(xml_out,
i) ;
545 eta4_loop.
dump(xml_out,
i) ;
546 eta4_kilcup_loop.
dump(xml_out,
i) ;
547 eta0_loop.
dump(xml_out,
i) ;
554 scalar_one_loop.
dump(xml_out) ;
555 scalar_one_kilcup_loop.
dump(xml_out);
556 scalar_two_loop.
dump(xml_out) ;
557 scalar_four_loop.
dump(xml_out) ;
558 scalar_four_kilcup_loop.
dump(xml_out) ;
559 eta3_loop.
dump(xml_out) ;
560 eta4_loop.
dump(xml_out) ;
561 eta4_kilcup_loop.
dump(xml_out) ;
562 eta0_loop.
dump(xml_out) ;
575 LatticeStaggeredFermion & q_source,
576 LatticeStaggeredFermion &
psi ,
577 LatticeStaggeredFermion & psi_fuzz ,
578 const multi1d<LatticeColorMatrix> &
u,
579 const multi1d<LatticeColorMatrix> & u_smr,
583 bool loop_checkpoint,
595 int src_color_ind = 0;
596 int src_parity_ind = 0;
597 int src_corner_ind =0;
598 Real coverage_fraction;
600 push(xml_out,
"fuzz_loops_s");
609 write(xml_out,
"Number_of_samples" , Nsamp);
610 write(xml_out,
"fuzz_width" , fuzz_width);
659 for(
int i = 0;
i < Nsamp; ++
i){
662 QDPIO::cout <<
"SEED = " << seed << std::endl;
664 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
668 t_length, &src_tslice,
669 &src_color_ind, &src_parity_ind,
670 &src_corner_ind, src_seperation,
676 push(xml_out,
"Qprop_noise");
677 write(xml_out,
"Noise_number" ,
i);
680 write(xml_out,
"Seed" , seed);
688 scalar_one_loop.
compute(q_source,psi_fuzz,
i) ;
690 scalar_two_loop.
compute(q_source,psi_fuzz,
i) ;
693 eta3_loop.
compute(q_source,psi_fuzz,
i) ;
694 eta4_loop.
compute(q_source,psi_fuzz,
i) ;
702 scalar_one_loop.
dump(xml_out,
i) ;
703 scalar_one_kilcup_loop.
dump(xml_out,
i);
704 scalar_two_loop.
dump(xml_out,
i) ;
705 scalar_four_loop.
dump(xml_out,
i) ;
706 scalar_four_kilcup_loop.
dump(xml_out,
i) ;
707 eta3_loop.
dump(xml_out,
i) ;
708 eta4_loop.
dump(xml_out,
i) ;
709 eta4_kilcup_loop.
dump(xml_out,
i) ;
710 eta0_loop.
dump(xml_out,
i) ;
717 scalar_one_loop.
dump(xml_out) ;
718 scalar_one_kilcup_loop.
dump(xml_out);
719 scalar_two_loop.
dump(xml_out) ;
720 scalar_four_loop.
dump(xml_out) ;
721 scalar_four_kilcup_loop.
dump(xml_out) ;
722 eta3_loop.
dump(xml_out) ;
723 eta4_loop.
dump(xml_out) ;
724 eta4_kilcup_loop.
dump(xml_out) ;
725 eta0_loop.
dump(xml_out) ;
739 LatticeStaggeredFermion & q_source,
740 LatticeStaggeredFermion &
psi ,
741 LatticeStaggeredFermion & psi_fuzz ,
742 const multi1d<LatticeColorMatrix> &
u,
743 const multi1d<LatticeColorMatrix> & u_smr,
747 bool loop_checkpoint,
756 int j_decay,
bool binary_loop_checkpoint,
760 int src_color_ind = 0;
761 int src_parity_ind = 0;
762 int src_corner_ind =0;
763 Real coverage_fraction;
767 push(xml_out,
"fuzz_loops_s");
776 write(xml_out,
"Number_of_samples" , Nsamp);
777 write(xml_out,
"fuzz_width" , fuzz_width);
847 for(
int i = 0;
i < Nsamp; ++
i){
850 QDPIO::cout <<
"SEED = " << seed << std::endl;
852 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
856 t_length, &src_tslice,
857 &src_color_ind, &src_parity_ind,
858 &src_corner_ind, src_seperation,
866 res = (*qprop)(
psi, q_source);
869 double time_in_sec = swatch.getTimeInSeconds();
870 QDPIO::cout <<
"ks_fuzz_loops::PROF INVERTER [" <<
i <<
"] " << time_in_sec <<
" sec" << std::endl;
877 push(xml_out,
"Qprop_noise");
878 write(xml_out,
"Noise_number" ,
i);
881 write(xml_out,
"Seed" , seed);
891 double time_in_sec = swatch.getTimeInSeconds();
892 QDPIO::cout <<
"ks_fuzz_loops::PROF fuzz_smear [" <<
i <<
"] " << time_in_sec <<
" sec" << std::endl;
914 scalar_one_loop_fuzz.
compute(q_source,psi_fuzz,
i);
916 scalar_two_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
917 eta3_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
918 eta4_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
923 double time_in_sec = swatch.getTimeInSeconds();
924 QDPIO::cout <<
"ks_fuzz_loops::PROF compute [" <<
i <<
"] " << time_in_sec <<
" sec" << std::endl;
936 scalar_one_loop.
dump(xml_out,
i) ;
937 scalar_one_kilcup_loop.
dump(xml_out,
i);
938 scalar_two_loop.
dump(xml_out,
i) ;
939 scalar_four_loop.
dump(xml_out,
i) ;
940 scalar_four_kilcup_loop.
dump(xml_out,
i) ;
941 eta3_loop.
dump(xml_out,
i) ;
942 eta4_loop.
dump(xml_out,
i) ;
943 eta4_kilcup_loop.
dump(xml_out,
i) ;
944 eta0_loop.
dump(xml_out,
i) ;
946 scalar_one_loop_fuzz.
dump(xml_out,
i) ;
947 scalar_one_kilcup_loop_fuzz.
dump(xml_out,
i);
948 scalar_two_loop_fuzz.
dump(xml_out,
i) ;
949 eta3_loop_fuzz.
dump(xml_out,
i) ;
950 eta4_loop_fuzz.
dump(xml_out,
i) ;
951 eta4_kilcup_loop_fuzz.
dump(xml_out,
i) ;
954 double time_in_sec = swatch.getTimeInSeconds();
955 QDPIO::cout <<
"ks_fuzz_loops::PROF CHECKPOINT [" <<
i <<
"] " << time_in_sec <<
" sec" << std::endl;
968 scalar_one_loop.
dump(xml_out) ;
969 scalar_one_kilcup_loop.
dump(xml_out);
970 scalar_two_loop.
dump(xml_out) ;
971 scalar_four_loop.
dump(xml_out) ;
972 scalar_four_kilcup_loop.
dump(xml_out) ;
973 eta3_loop.
dump(xml_out) ;
974 eta4_loop.
dump(xml_out) ;
975 eta4_kilcup_loop.
dump(xml_out) ;
977 eta0_loop.
dump(xml_out) ;
979 scalar_one_loop_fuzz.
dump(xml_out);
980 scalar_one_kilcup_loop_fuzz.
dump(xml_out);
981 scalar_two_loop_fuzz.
dump(xml_out) ;
982 eta3_loop_fuzz.
dump(xml_out) ;
983 eta4_loop_fuzz.
dump(xml_out) ;
984 eta4_kilcup_loop_fuzz.
dump(xml_out) ;
988 double time_in_sec = swatch.getTimeInSeconds();
989 QDPIO::cout <<
"ks_fuzz_loops::FINAL IO " << time_in_sec <<
" sec" << std::endl;
993 if(binary_loop_checkpoint )
1010 scalar_one_kilcup_loop_fuzz.
binary_dump(binary_name) ;
1017 double time_in_sec = swatch.getTimeInSeconds();
1018 QDPIO::cout <<
"ks_fuzz_loops::BINARY IO " << time_in_sec <<
" sec" << std::endl;
1034 LatticeStaggeredFermion & q_source1,
1035 LatticeStaggeredFermion & psi1 ,
1036 const multi1d<LatticeColorMatrix> &
u,
1037 XMLWriter & xml_out,
1040 bool loop_checkpoint,
1051 LatticeStaggeredFermion psi2 ;
1052 LatticeStaggeredFermion q_source2 ;
1055 push(xml_out,
"local_loops_s");
1062 write(xml_out,
"Number_of_samples" , Nsamp);
1110 int src_color_ind = 0;
1111 int src_parity_ind = 0;
1112 int src_corner_ind =0;
1115 int src_color_ind2 = 0;
1116 int src_parity_ind2 = 0;
1117 int src_corner_ind2 =0;
1119 Real coverage_fraction;
1121 for(
int i = 0;
i < Nsamp; ++
i){
1125 QDPIO::cout <<
"SEED = " << seed << std::endl;
1127 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
1131 t_length, &src_tslice,
1132 &src_color_ind, &src_parity_ind,
1133 &src_corner_ind, src_seperation,
1138 t_length, &src_tslice2,
1139 &src_color_ind2, &src_parity_ind2,
1140 &src_corner_ind2, src_seperation,
1147 push(xml_out,
"Qprop_noise");
1148 write(xml_out,
"Noise_number" ,
i);
1151 write(xml_out,
"n_count2", res2.n_count);
1152 write(xml_out,
"Seed" , seed);
1156 scalar_one_loop.
compute(q_source1,psi1,
i) ;
1158 scalar_two_loop.
compute(q_source1,psi1,
i) ;
1159 scalar_four_loop.
compute(q_source1,psi1,
i);
1161 eta3_loop.
compute(q_source1,psi1,
i) ;
1162 eta4_loop.
compute(q_source1,psi1,
i) ;
1164 eta0_loop.
compute(q_source1,psi1,
i) ;
1166 eta4_conn.
compute(q_source1, q_source2, psi1, psi2,
i) ;
1168 if(loop_checkpoint){
1171 scalar_one_loop.
dump(xml_out,
i) ;
1172 scalar_one_kilcup_loop.
dump(xml_out,
i);
1173 scalar_two_loop.
dump(xml_out,
i) ;
1174 scalar_four_loop.
dump(xml_out,
i) ;
1175 scalar_four_kilcup_loop.
dump(xml_out,
i) ;
1176 eta3_loop.
dump(xml_out,
i) ;
1177 eta4_loop.
dump(xml_out,
i) ;
1178 eta4_kilcup_loop.
dump(xml_out,
i) ;
1179 eta0_loop.
dump(xml_out,
i) ;
1183 eta4_conn.
dump(xml_out,
i) ;
1184 QDPIO::cout << __func__ <<
": OUTNOW!!!!" << std::endl;
1189 scalar_one_loop.
dump(xml_out) ;
1190 scalar_one_kilcup_loop.
dump(xml_out);
1191 scalar_two_loop.
dump(xml_out) ;
1192 scalar_four_loop.
dump(xml_out) ;
1193 scalar_four_kilcup_loop.
dump(xml_out) ;
1194 eta3_loop.
dump(xml_out) ;
1195 eta4_loop.
dump(xml_out) ;
1196 eta4_kilcup_loop.
dump(xml_out) ;
1197 eta0_loop.
dump(xml_out) ;
1202 QDPIO::cout << __func__ <<
": OUTNOW!!!!" << std::endl;
1203 eta4_conn.
dump(xml_out) ;
1205 QDPIO::cout << __func__ <<
": OUTNOW!!!!" << std::endl;
1219 LatticeStaggeredFermion & q_source,
1220 LatticeStaggeredFermion &
psi ,
1221 LatticeStaggeredFermion & psi_fuzz ,
1222 const multi1d<LatticeColorMatrix> &
u,
1223 const multi1d<LatticeColorMatrix> & u_smr,
1224 XMLWriter & xml_out,
1227 bool loop_checkpoint,
1239 int src_color_ind = 0;
1240 int src_parity_ind = 0;
1241 int src_corner_ind =0;
1244 int src_color_ind2 = 0;
1245 int src_parity_ind2 = 0;
1246 int src_corner_ind2 =0;
1248 Real coverage_fraction;
1252 LatticeStaggeredFermion psi2 ;
1253 LatticeStaggeredFermion q_source2 ;
1255 bool fuzz_sink=
false;
1256 bool fuzz_src=
false;
1258 push(xml_out,
"fuzz_loops_s");
1267 write(xml_out,
"Number_of_samples" , Nsamp);
1268 write(xml_out,
"fuzz_width" , fuzz_width);
1352 for(
int i = 0;
i < Nsamp; ++
i){
1357 QDPIO::cout <<
"SEED = " << seed << std::endl;
1359 QDPIO::cout <<
"Noise sample: " <<
i << std::endl;
1363 t_length, &src_tslice,
1364 &src_color_ind, &src_parity_ind,
1365 &src_corner_ind, src_seperation,
1370 t_length, &src_tslice2,
1371 &src_color_ind2, &src_parity_ind2,
1372 &src_corner_ind2, src_seperation,
1380 push(xml_out,
"Qprop_noise");
1381 write(xml_out,
"Noise_number" ,
i);
1384 write(xml_out,
"Seed" , seed);
1403 eta4_conn.
compute(q_source, q_source2,
1407 eta4_conn_FsrcLsink.
compute(q_source, q_source2,
1410 eta4_conn_LsrcFsink.
compute(q_source, q_source2,
1415 scalar_one_loop_fuzz.
compute(q_source,psi_fuzz,
i);
1417 scalar_two_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
1418 eta3_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
1419 eta4_loop_fuzz.
compute(q_source,psi_fuzz,
i) ;
1425 if(loop_checkpoint){
1428 scalar_one_loop.
dump(xml_out,
i) ;
1429 scalar_one_kilcup_loop.
dump(xml_out,
i);
1430 scalar_two_loop.
dump(xml_out,
i) ;
1431 scalar_four_loop.
dump(xml_out,
i) ;
1432 scalar_four_kilcup_loop.
dump(xml_out,
i);
1433 eta3_loop.
dump(xml_out,
i) ;
1434 eta4_loop.
dump(xml_out,
i) ;
1435 eta4_kilcup_loop.
dump(xml_out,
i) ;
1436 eta0_loop.
dump(xml_out,
i) ;
1438 scalar_one_loop_fuzz.
dump(xml_out,
i) ;
1439 scalar_one_kilcup_loop_fuzz.
dump(xml_out,
i);
1440 scalar_two_loop_fuzz.
dump(xml_out,
i) ;
1441 eta3_loop_fuzz.
dump(xml_out,
i) ;
1442 eta4_loop_fuzz.
dump(xml_out,
i) ;
1443 eta4_kilcup_loop_fuzz.
dump(xml_out,
i) ;
1447 eta4_conn.
dump(xml_out,
i) ;
1448 eta4_conn_FsrcLsink.
dump(xml_out,
i) ;
1449 eta4_conn_LsrcFsink.
dump(xml_out,
i) ;
1454 scalar_one_loop.
dump(xml_out) ;
1455 scalar_one_kilcup_loop.
dump(xml_out);
1456 scalar_two_loop.
dump(xml_out) ;
1457 scalar_four_loop.
dump(xml_out) ;
1458 scalar_four_kilcup_loop.
dump(xml_out) ;
1459 eta3_loop.
dump(xml_out) ;
1460 eta4_loop.
dump(xml_out) ;
1461 eta4_kilcup_loop.
dump(xml_out) ;
1463 eta0_loop.
dump(xml_out) ;
1465 scalar_one_loop_fuzz.
dump(xml_out) ;
1466 scalar_one_kilcup_loop_fuzz.
dump(xml_out);
1467 scalar_two_loop_fuzz.
dump(xml_out) ;
1468 eta3_loop_fuzz.
dump(xml_out) ;
1469 eta4_loop_fuzz.
dump(xml_out) ;
1470 eta4_kilcup_loop_fuzz.
dump(xml_out) ;
1475 QDPIO::cout << __func__ <<
": OUTNOW!!!!" << std::endl;
1476 eta4_conn.
dump(xml_out) ;
1477 eta4_conn_FsrcLsink.
dump(xml_out) ;
1478 eta4_conn_LsrcFsink.
dump(xml_out) ;
Class for counted reference semantics.
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source1, LatticeStaggeredFermion &q_source2, LatticeStaggeredFermion &psi1, LatticeStaggeredFermion &psi2, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
Class for local (zero-link) scalar loop, with VKVR and fuzzing.
void compute(LatticeStaggeredFermion &psi_fuzz, LatticeStaggeredFermion &psi, int isample, Real mass)
Do the measurement (with VKVR)
Class for local (zero-link) scalar loop using VKVR trick.
void compute(LatticeStaggeredFermion &psi, int isample, Real mass)
Do the measurement (needs psi, not q_source!)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void dump(XMLWriter &xml_out)
void binary_dump(std::string start_name)
void dump(XMLWriter &xml_out)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
void compute(LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, int isample)
Class structure for fermion actions.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams ¶m)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams ¶m)
Writer parameters.
void gaussian_on_timeslice(LatticeStaggeredFermion &a, int slice, int mu)
Volume source of complex Z2 noise.
void fuzz_smear(const multi1d< LatticeColorMatrix > &ufuzz, const T &psi, T &psifuzz, int length, int j_decay)
apply a fuzz_smear operator to a lattice field
void gaussian_on_corner(LatticeStaggeredFermion &a, int corner_index)
Diluted Gauusian-source.
void z2_src(LatticeFermion &a)
Z2-source.
void gaussian_corner_on_mod_dbl_slice(LatticeStaggeredFermion &a, int corner_index, int slice, int mu, int seperation)
Diluted Gauusian-source.
void gaussian_on_parity(LatticeStaggeredFermion &a, int parity)
Diluted Gauusian-source.
void gaussian_color_src_on_slice(LatticeStaggeredFermion &a, int color_index, int slice, int mu)
Diluted Gauusian-source.
void gaussian_color_src_on_parity(LatticeStaggeredFermion &a, int color_index, int parity)
Diluted Gauusian-source.
void gaussian_color_src(LatticeStaggeredFermion &a, int color_index)
Diluted Gauusian-source.
void gaussian_parity_src_on_slice(LatticeStaggeredFermion &a, int parity, int slice, int mu)
Diluted Gauusian-source.
void gaussian_on_mod_timeslice(LatticeStaggeredFermion &a, int slice, int mu, int seperation)
Diluted Gauusian-source.
void gaussian_corner_on_dbl_slice(LatticeStaggeredFermion &a, int corner_index, int slice, int mu)
Diluted Gauusian-source.
void gaussian_color_src_on_mod_slice(LatticeStaggeredFermion &a, int color_index, int slice, int mu, int seperation)
Diluted Gauusian-source.
Wrapper routines for computing loops with staggeref fermions.
void savern(int iseed[4])
Asqtad Staggered-Dirac operator.
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > const multi1d< Real > enum InvType invType const multi1d< Real > & RsdCG
QDP_error_exit("too many BiCG iterations", n_count, rsd_sq, cp, c, re_rvr, im_rvr, re_a, im_a, re_b, im_b)
static multi1d< LatticeColorMatrix > u
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > const multi1d< Real > & Mass
push(xml_out,"Condensates")
void ks_local_loops_and_stoch_conn(Handle< SystemSolver< LatticeStaggeredFermion > > &qprop, LatticeStaggeredFermion &q_source1, LatticeStaggeredFermion &psi1, const multi1d< LatticeColorMatrix > &u, XMLWriter &xml_out, bool gauge_shift, bool sym_shift, bool loop_checkpoint, int t_length, Real Mass, int Nsamp, Real RsdCG, int CFGNO, VolSrc_type volume_source, int src_seperation, int j_decay)
void write_out_source_type(XMLWriter &xml_out, VolSrc_type volume_source)
void ks_fuzz_loops_X(Handle< SystemSolver< LatticeStaggeredFermion > > &qprop, LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, LatticeStaggeredFermion &psi_fuzz, const multi1d< LatticeColorMatrix > &u, const multi1d< LatticeColorMatrix > &u_smr, XMLWriter &xml_out, bool gauge_shift, bool sym_shift, bool loop_checkpoint, int t_length, Real Mass, int Nsamp, Real RsdCG, int CFGNO, VolSrc_type volume_source, int fuzz_width, int src_seperation, int j_decay)
void ks_fuzz_loops_stoch_conn(Handle< SystemSolver< LatticeStaggeredFermion > > &qprop, LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, LatticeStaggeredFermion &psi_fuzz, const multi1d< LatticeColorMatrix > &u, const multi1d< LatticeColorMatrix > &u_smr, XMLWriter &xml_out, bool gauge_shift, bool sym_shift, bool loop_checkpoint, int t_length, Real Mass, int Nsamp, Real RsdCG, int CFGNO, VolSrc_type volume_source, int fuzz_width, int src_seperation, int j_decay)
Real fill_volume_source(LatticeStaggeredFermion &q_source, VolSrc_type volume_source, int t_length, int *p_src_tslice, int *p_src_color_ind, int *p_src_parity_ind, int *p_src_corner_ind, int src_seperation, int j_decay)
void ks_fuzz_loops(Handle< SystemSolver< LatticeStaggeredFermion > > &qprop, LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, LatticeStaggeredFermion &psi_fuzz, const multi1d< LatticeColorMatrix > &u, const multi1d< LatticeColorMatrix > &u_smr, XMLWriter &xml_out, bool gauge_shift, bool sym_shift, bool loop_checkpoint, int t_length, Real Mass, int Nsamp, Real RsdCG, int CFGNO, VolSrc_type volume_source, int fuzz_width, int src_seperation, int j_decay, bool binary_loop_checkpoint, std::string binary_name)
void ks_local_loops(Handle< SystemSolver< LatticeStaggeredFermion > > &qprop, LatticeStaggeredFermion &q_source, LatticeStaggeredFermion &psi, const multi1d< LatticeColorMatrix > &u, XMLWriter &xml_out, bool gauge_shift, bool sym_shift, bool loop_checkpoint, int t_length, Real Mass, int Nsamp, Real RsdCG, int CFGNO, VolSrc_type volume_source, int src_seperation, int j_decay)
@ COR_MOD_DBL_T_DILUTE_GAUSS
Point source construction.
Holds return info from SystemSolver call.
Volume source of Z2 noise.