26 XMLReader inputtop(xml, path);
35 read(inputtop,
"Cfg", input.
cfg);
39 QDPIO::cerr <<
"Error reading data: " << e << std::endl;
45 int main(
int argc,
char **argv)
54 read(xml_in,
"/ovlapTest", input);
57 QDPIO::cerr <<
"Caught Exception : " << e << std::endl;
64 Layout::setLattSize(input.
param.nrow);
67 multi1d<LatticeColorMatrix>
u(
Nd);
68 XMLReader gauge_file_xml, gauge_xml;
72 push(xml_out,
"t_ovlap5d_bj");
76 MesPlq(xml_out,
"Observables",
u);
89 QDPIO::cout <<
"FERM_ACT_ZOLOTAREV_5D" << std::endl;
90 const Zolotarev5DFermActParams& zolo5d =
dynamic_cast<const Zolotarev5DFermActParams&
> (*(input.
param.FermActHandle));
93 Zolotarev5DFermActArray S(fbc5, fbc, zolo5d, xml_out);
112 chi4 /= sqrt(norm2(chi4));
116 multi1d<LatticeFermion>
psi(
N5 );
117 multi1d<LatticeFermion>
chi(
N5 );
120 QDP::StopWatch swatch;
124 for(
int i = 0;
i <
N5;
i++) {
146 t = swatch.getTimeInSeconds();
148 multi1d<LatticeFermion> tmp5_1(
N5);
153 multi1d<LatticeFermion> tmp5_2(
N5 );
156 for(
int i = 0;
i <
N5;
i++) {
157 tmp5_2[
i] =
chi[
i] - tmp5_1[
i];
158 dnorm += norm2(tmp5_2[
i]);
159 g5chi_norm += norm2(
chi[
i]);
163 Double r_norm5 = sqrt(dnorm/g5chi_norm);
164 QDPIO::cout <<
"|| chi - D psi ||/ || chi || = " << r_norm5 << std::endl;
165 QDPIO::cout <<
"time = " <<
t <<
" seconds " << std::endl;
166 push(xml_out,
"Inv5DCheck");
167 write(xml_out,
"r_norm", r_norm5);
172 for(
int i = 0;
i <
N5;
i++) {
195 t = swatch.getTimeInSeconds();
203 for(
int i = 0;
i <
N5;
i++) {
204 tmp5_2[
i] =
chi[
i] - tmp5_1[
i];
205 dnorm += norm2(tmp5_2[
i]);
206 g5chi_norm += norm2(
chi[
i]);
210 r_norm5 = sqrt(dnorm/g5chi_norm);
211 QDPIO::cout <<
"|| chi - D psi ||/ || chi || = " << r_norm5 << std::endl;
212 QDPIO::cout <<
"time = " <<
t <<
" seconds " << std::endl;
213 push(xml_out,
"Inv5DCheck");
214 write(xml_out,
"r_norm", r_norm5);
Primary include file for CHROMA in application codes.
Class for counted reference semantics.
Concrete class for all gauge actions with simple boundary conditions.
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 gaugeStartup(XMLReader &gauge_file_xml, XMLReader &gauge_xml, multi1d< LatticeColorMatrix > &u, Cfg_t &cfg)
Initialize the gauge fields.
SystemSolverResults_t InvCG1(const LinearOperator< LatticeFermion > &A, const LatticeFermion &chi, LatticeFermion &psi, const Real &RsdCG, int MaxCG, int MinCG)
Conjugate-Gradient (CGNE) algorithm for a generic Linear Operator.
Relaxed GMRESR algorithm of the Wuppertal Group.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
void InvMINRES(const LinearOperatorArray< LatticeFermion > &A, const multi1d< LatticeFermion > &chi, multi1d< LatticeFermion > &psi, const Real &RsdCG, int MaxCG, int &n_count)
push(xml_out,"Condensates")
void initialize(int *argc, char ***argv)
Chroma initialisation routine.
void finalize(void)
Chroma finalization routine.
multi1d< LatticeFermion > chi(Ncb)
std::string getXMLInputFileName()
Get input file name.
void MesPlq(const multi1d< LatticeColorMatrixF3 > &u, multi2d< Double > &plane_plaq, Double &link)
XMLFileWriter & getXMLOutputInstance()
Get xml output instance.
FloatingPoint< double > Double
Gauge configuration structure.
int main(int argc, char **argv)