13 int main(
int argc,
char **argv)
24 multi1d<int> nrow(
Nd);
25 multi1d<int> boundary(
Nd);
26 XMLReader xml_in(
in,
"/t_dwflocality" );
27 read(xml_in,
"nrow", nrow);
28 read(xml_in,
"boundary", boundary);
31 Layout::setLattSize(nrow);
35 XMLFileWriter xml(
"t_dwflocality.xml");
36 push(xml,
"DWF_locality");
38 write(xml,
"size",nrow);
39 write(xml,
"bc",boundary);
46 invParam.
RsdCG = 1.0e-7 ;
47 invParam.
MaxCG = 5000 ;
51 read(xml_in,
"M5", WilsonMass);
53 push(xml,
"ChiralParam");
55 write(xml,
"WilsonMass",WilsonMass);
60 read(xml_in,
"cfg", cfg);
62 push(xml,
"Configuration");
63 write(xml,
"cfg", cfg);
65 QDPIO::cout <<
"Read config from " << cfg.
cfg_file << std::endl;
68 multi1d<LatticeColorMatrix>
u(
Nd);
69 XMLReader gauge_file_xml, gauge_xml;
74 QDPIO::cout <<
" Initial plaqettes and link: " <<
w_plaq
76 push(xml,
"gauge_observables");
85 typedef LatticeFermion
T;
86 typedef multi1d<LatticeFermion>
MLF;
87 typedef multi1d<LatticeColorMatrix>
P;
88 typedef multi1d<LatticeColorMatrix>
Q;
104 QDPIO::cout <<
"Constructing source" << std::endl;
105 multi1d<int> coor(4) ;
106 coor[0]=coor[1]=coor[2]=0 ;
110 QDPIO::cout <<
"Done" << std::endl;
112 QDPIO::cout <<
"source norm :" << norm2(chi4)<< std::endl;
114 tt = localNorm2(chi4) ;
118 chi[0 ] = chiralProjectPlus(chi4) ;
119 chi[
N5-1] = chiralProjectMinus(chi4) ;
121 QDPIO::cout <<
"5D source norm :" << norm2(
chi)<< std::endl;
124 XMLBufferWriter xml_buf;
125 write(xml_buf,
"InvertParam", invParam);
126 XMLReader xml_inn(xml_buf);
133 res4 = chiralProjectMinus(
psi[0]) + chiralProjectPlus(
psi[
N5-1]) ;
137 mag = sqrt(localNorm2(chi4 - res4)) ;
141 multi1d<Real> val(nrow[0]);
143 for (
int x(0);
x<nrow[0];
x++){
145 val[
x] = peekSite(mag,
c) ;
148 write(xml,
"val",val);
152 multi1d<Real> val(nrow[1]);
154 for (
int x(0);
x<nrow[1];
x++){
156 val[
x] = peekSite(mag,
c) ;
160 write(xml,
"val",val);
164 multi1d<Real> val(nrow[2]);
166 for (
int x(0);
x<nrow[2];
x++){
168 val[
x] = peekSite(mag,
c) ;
171 write(xml,
"val",val);
175 multi1d<Real> val(nrow[3]);
177 for (
int x(0);
x<nrow[3];
x++){
179 val[
x] = peekSite(mag,
c) ;
182 write(xml,
"val",val);
Primary include file for CHROMA in application codes.
Create a simple ferm connection state.
4D style even-odd preconditioned domain-wall fermion action
SystemSolverArray< T > * qpropT(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Return possibly optimized quark prop solver, solution of preconditioned system.
virtual FermState< T, P, Q > * createState(const Q &q) const
Given links (coordinates Q) create the state needed for the linear operators.
Class for counted reference semantics.
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.
GroupXML_t readXMLGroup(XMLReader &xml_in, const std::string &path, const std::string &type_name)
Read group and return as a std::string.
void srcfil(LatticeFermion &a, const multi1d< int > &coord, int color_index, int spin_index)
Fill a specific color and spin index with 1.0.
multi1d< LatticeColorMatrix > P
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
LinOpSysSolverMGProtoClover::Q Q
push(xml_out,"Condensates")
LinOpSysSolverMGProtoClover::T T
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)
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
static QDP_ColorVector * in
FloatingPoint< double > Double
Gauge configuration structure.
Hold group xml and type id.
int main(int argc, char **argv)
multi1d< LatticeFermion > MLF