Bridge++  Ver. 2.0.2
fprop_alt.h
Go to the documentation of this file.
1 
10 #ifndef FPROP_ALT_INCLUDED
11 #define FPROP_ALT_INCLUDED
12 
14 #include "lib/Tools/timer.h"
15 
16 #include "lib/Fopr/afopr.h"
18 
19 #include "lib_alt/Solver/asolver.h"
20 
22 
28 template<typename AFIELD>
29 class Fprop_alt : public Fprop
30 {
31  public:
32  typedef typename AFIELD::real_t real_t;
33  // static const std::string class_name;
34  using Fprop::m_vl;
35  using Fprop::m_mode;
36 
37  virtual ~Fprop_alt() { }
38 
39  virtual void set_config(Field *) = 0;
40 
41  virtual void invert(Field&, const Field&, int&, double&) = 0;
42 
43  virtual void invert_D(Field&, const Field&, int&, double&) = 0;
44 
45  virtual void invert_DdagD(Field&, const Field&, int&, double&) = 0;
46 
47  virtual void invert(AFIELD&, const AFIELD&, int&, double&) { }
48 
49  virtual double flop_count() { return 0.0; }
50 
51  virtual void reset_performance() { }
52 
53  virtual void get_performance(double& flop_count, double& elapsed_time)
54  { }
55 
56  virtual void report_performance() { }
57 
58  virtual void mult_performance(const std::string mode, const int Nrepeat)
59  { }
60 };
61 #endif
director_Smear.h
Fprop_alt::mult_performance
virtual void mult_performance(const std::string mode, const int Nrepeat)
Definition: fprop_alt.h:58
Fprop_alt::invert_DdagD
virtual void invert_DdagD(Field &, const Field &, int &, double &)=0
Fprop_alt::invert
virtual void invert(Field &, const Field &, int &, double &)=0
invert accordingly to the mode. [22 Sep 2018 H.Matsufuru]
Fprop_alt::reset_performance
virtual void reset_performance()
Definition: fprop_alt.h:51
Field::real_t
double real_t
Definition: field.h:51
Fprop_alt::invert
virtual void invert(AFIELD &, const AFIELD &, int &, double &)
invert accordingly to the mode. [22 Sep 2018 H.Matsufuru]
Definition: fprop_alt.h:47
Fprop_alt::get_performance
virtual void get_performance(double &flop_count, double &elapsed_time)
Definition: fprop_alt.h:53
Fprop_alt::invert_D
virtual void invert_D(Field &, const Field &, int &, double &)=0
Fprop_alt
Get quark propagator for Fopr with lexical site index: alternative version.
Definition: fprop_alt.h:29
timer.h
Fprop::m_vl
Bridge::VerboseLevel m_vl
Definition: fprop.h:37
Fprop_alt::set_config
virtual void set_config(Field *)=0
Fprop_alt::real_t
AFIELD::real_t real_t
Definition: fprop_alt.h:32
Fprop
Base class for fermion propagator class family.
Definition: fprop.h:34
Fprop_alt::report_performance
virtual void report_performance()
Definition: fprop_alt.h:56
Fprop_alt::flop_count
virtual double flop_count()
Definition: fprop_alt.h:49
Fprop::m_mode
std::string m_mode
Definition: fprop.h:38
Fprop_alt::~Fprop_alt
virtual ~Fprop_alt()
Definition: fprop_alt.h:37
Field
Container of Field-type object.
Definition: field.h:46
afopr.h
asolver.h
fprop.h