CHROMA
syssolver_quda_clover_params.h
Go to the documentation of this file.
1 #ifndef __SYSSOLVER_QUDA_CLOVER_PARAMS_H__
2 #define __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  SysSolverQUDACloverParams(XMLReader& xml, const std::string& path);
18  solverType=CG;
23  asymmetricP = false; //< Use asymmetric version of the linear operator
24  axialGaugeP = false; //< Fix Axial Gauge?
25  SilentFailP = false; //< If set to true ignore lack of convergence. Default is 'loud'
26  RsdToleranceFactor = Real(10); //< Tolerate if the solution achived is better (less) than rsdToleranceFactor*RsdTarget
27  tuneDslashP = false ; //< v0.3 autotune feature
28  verboseP = false;
29  innerParamsP = false;
30  backup_invP = false;
31  dump_on_failP = false;
32  Pipeline = 1;
33  };
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  axialGaugeP = p.axialGaugeP;
49  SilentFailP = p.SilentFailP;
50  RsdToleranceFactor = p.RsdToleranceFactor;
51  tuneDslashP = p.tuneDslashP;
52  innerParamsP = p.innerParamsP;
53  innerParams = p.innerParams;
54  backup_invP = p.backup_invP;
55  backup_inv_param = p.backup_inv_param;
56  dump_on_failP = p.dump_on_failP;
57  Pipeline = p.Pipeline;
58  }
59 
60 
63  int MaxIter;
64  Real RsdTarget;
65  Real Delta;
67  bool verboseP;
78 
79  // GCR Specific params
80  // Params for the preconditioner
82 
83  // XML for Backup Solver
87 
88  // Pipeline depth
89  int Pipeline;
90  };
91 
92  void read(XMLReader& xml, const std::string& path, SysSolverQUDACloverParams& p);
93 
94  void write(XMLWriter& xml, const std::string& path,
95  const SysSolverQUDACloverParams& param);
96 
97 
98 
99 }
100 
101 #endif
102 
103 
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.
Hold group xml and type id.
Handle< GCRInnerSolverParams > innerParams
SysSolverQUDACloverParams(const SysSolverQUDACloverParams &p)
Read an XML group as a std::string.