CHROMA
multi_syssolver_quda_clover_params.h
Go to the documentation of this file.
1 #ifndef __MULTI_SYSSOLVER_QUDA_CLOVER_PARAMS_H__
2 #define __MULTI_SYSSOLVER_QUDA_CLOVER_PARAMS_H__
3 
4 #include "chromabase.h"
5 #include "io/xml_group_reader.h"
6 
10 #include <string>
11 #include "handle.h"
12 
13 namespace Chroma
14 {
16  MultiSysSolverQUDACloverParams(XMLReader& xml, const std::string& path);
18  solverType=CG;
25  asymmetricP = false; //< Use asymmetric version of the linear operator
26  axialGaugeP = false; //< Fix Axial Gauge?
27  SilentFailP = false; //< If set to true ignore lack of convergence. Default is 'loud'
28  RsdToleranceFactor = Real(10); //< Tolerate if the solution achived is better (less) than rsdToleranceFactor*RsdTarget
29  tuneDslashP = false ; //< v0.3 autotune feature
30  verboseP = false;
31  innerParamsP = false;
32  checkShiftsP = true;
33  Pipeline=0;
34  };
36  CloverParams = p.CloverParams;
37  AntiPeriodicT = p.AntiPeriodicT;
38  MaxIter = p.MaxIter;
39  RsdTarget = p.RsdTarget;
40  Delta = p.Delta;
41  solverType = p.solverType;
42  verboseP = p.verboseP;
43  asymmetricP = p.asymmetricP;
44  cudaPrecision = p.cudaPrecision;
45  cudaReconstruct = p.cudaReconstruct;
46  cudaSloppyPrecision = p.cudaSloppyPrecision;
47  cudaSloppyReconstruct = p.cudaSloppyReconstruct;
48  cudaRefinementPrecision = p.cudaRefinementPrecision;
49  cudaRefinementReconstruct = p.cudaRefinementReconstruct;
50  axialGaugeP = p.axialGaugeP;
51  SilentFailP = p.SilentFailP;
52  RsdToleranceFactor = p.RsdToleranceFactor;
53  tuneDslashP = p.tuneDslashP;
54  innerParamsP = p.innerParamsP;
55  innerParams = p.innerParams;
56  checkShiftsP = p.checkShiftsP;
57  Pipeline = p.Pipeline;
58  }
59 
60 
63  int MaxIter;
64  multi1d<Real> RsdTarget;
65  Real Delta;
67  bool verboseP;
81  int Pipeline;
82 
83  // GCR Specific params
84  // Params for the preconditioner
86 
87 
88  };
89 
90  void read(XMLReader& xml, const std::string& path, MultiSysSolverQUDACloverParams& p);
91 
92  void write(XMLWriter& xml, const std::string& path,
93  const MultiSysSolverQUDACloverParams& param);
94 
95 
96 
97 }
98 
99 #endif
100 
101 
Primary include file for CHROMA library code.
Class for counted reference semantics.
Definition: handle.h:33
Parameters for Clover fermion action.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams &param)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams &param)
Writer parameters.
QudaSolverType
Quda Solver type.
Definition: enum_quda_io.h:21
QudaReconsType
Quda Gauge Reconstruct type.
Definition: enum_quda_io.h:77
QudaPrecisionType
Quda Precision type.
Definition: enum_quda_io.h:50
Class for counted reference semantics.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
@ RECONS_12
Definition: enum_quda_io.h:80
::std::string string
Definition: gtest.h:1979
Params for clover ferm acts.
MultiSysSolverQUDACloverParams(const MultiSysSolverQUDACloverParams &p)
Read an XML group as a std::string.