CHROMA
inline_heavyhadspec_w.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Inline hadron spectrum calculations
4  *
5  * Hadron spectrum calculations
6  */
7 
8 #ifndef __inline_heavyhadspec_h__
9 #define __inline_heavyhadspec_h__
10 
11 #include "chromabase.h"
13 
14 namespace Chroma
15 {
16  /*! \ingroup inlinehadron */
17  namespace InlineHeavyHadSpecEnv
18  {
19  extern const std::string name;
20  bool registerAll();
21  }
22 
23  //! Parameter structure
24  /*! \ingroup inlinehadron */
26  {
28  InlineHeavyHadSpecParams(XMLReader& xml_in, const std::string& path);
29  void write(XMLWriter& xml_out, const std::string& path);
30 
31  unsigned long frequency;
32 
33  struct Param_t
34  {
35  bool time_rev; // Use time reversal in baryon spectroscopy
36 
37  int mom2_max; // (mom)^2 <= mom2_max. mom2_max=7 in szin.
38  bool avg_equiv_mom; // average over equivalent momenta
39  } param;
40 
42  {
43  std::string gauge_id; /*!< Input gauge field */
44 
45  struct Props_t
46  {
49  };
50 
51  multi1d<Props_t> sink_pairs;
53 
54  std::string xml_file; // Alternate XML file pattern
55  };
56 
57 
58  //! Inline measurement of hadron spectrum
59  /*! \ingroup inlinehadron */
61  {
62  public:
66 
67  unsigned long getFrequency(void) const {return params.frequency;}
68 
69  //! Do the measurement
70  void operator()(const unsigned long update_no,
71  XMLWriter& xml_out);
72 
73  protected:
74  //! Do the measurement
75  void func(const unsigned long update_no,
76  XMLWriter& xml_out);
77 
78  private:
80  };
81 
82 }
83 
84 #endif
Abstract inline measurements.
Primary include file for CHROMA library code.
Inline measurement of hadron spectrum.
InlineHeavyHadSpec(const InlineHeavyHadSpec &p)
void operator()(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
unsigned long getFrequency(void) const
Tell me how often I should measure this beastie.
InlineHeavyHadSpecParams params
InlineHeavyHadSpec(const InlineHeavyHadSpecParams &p)
void func(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
::std::string string
Definition: gtest.h:1979
void write(XMLWriter &xml_out, const std::string &path)
struct Chroma::InlineHeavyHadSpecParams::Param_t param
struct Chroma::InlineHeavyHadSpecParams::NamedObject_t named_obj