CHROMA
hadron_2pt.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Construct hadron 2pt correlators
4  */
5 
6 #ifndef __hadron_2pt_h__
7 #define __hadron_2pt_h__
8 
10 #include "util/ft/sftmom.h"
11 
12 namespace Chroma
13 {
14  //! The result of hadron 2pt correlators
15  /*! @ingroup hadron */
17  {
18  XMLBufferWriter xml; /*!< XML about each correlator group. Used to drive the stripper */
19  LatticeComplex corr; /*!< Holds correlator after contraction, but before mom. projection */
20  };
21 
22 
23  //! The result of hadron 2pt correlators
24  /*! @ingroup hadron */
26  {
27  Handle<HadronContractResult_t> serialize() const; /*!< Serialization function */
28 
29  //! Momentum projected correlator
30  struct Mom_t
31  {
32  multi1d<int> mom; /*!< D-1 momentum of this correlator*/
33  multi1d<DComplex> corr; /*!< Momentum projected correlator */
34  };
35 
36  XMLBufferWriter xml; /*!< XML about each corr group - used to drive the stripper */
37  std::list<Mom_t> corrs; /*!< Holds momentum projected correlators */
38 
39  XMLBufferWriter xml_regres; /*!< Sample XML used for regression checking */
40  };
41 
42 
43  //! Construct hadron 2pt correlators
44  /*! @ingroup hadron
45  *
46  * Supports creation of hadron 2pt correlators
47  *
48  */
50  {
51  public:
52  //! Virtual destructor to help with cleanup;
53  virtual ~Hadron2PtCorr() {}
54 
55  //! Construct the correlators
56  virtual std::list< Handle<HadronContractResult_t> > operator()(
57  const multi1d<LatticeColorMatrix>& u,
58  const std::string& xml_group,
59  const std::string& id_tag) = 0;
60 
61  protected:
62  //! Convenience function to project onto fixed momenta
63  virtual std::list< Handle<HadronContractResult_t> > project(
64  const std::list< Handle<Hadron2PtContract_t> >& had_list,
65  const SftMomParams_t& p) const;
66  };
67 
68 }
69 
70 
71 #endif
Construct hadron 2pt correlators.
Definition: hadron_2pt.h:50
virtual std::list< Handle< HadronContractResult_t > > project(const std::list< Handle< Hadron2PtContract_t > > &had_list, const SftMomParams_t &p) const
Convenience function to project onto fixed momenta.
Definition: hadron_2pt.cc:33
virtual ~Hadron2PtCorr()
Virtual destructor to help with cleanup;.
Definition: hadron_2pt.h:53
virtual std::list< Handle< HadronContractResult_t > > operator()(const multi1d< LatticeColorMatrix > &u, const std::string &xml_group, const std::string &id_tag)=0
Construct the correlators.
Construct hadron correlators.
Class for counted reference semantics.
Definition: handle.h:33
Construct hadron correlators.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
static multi1d< LatticeColorMatrix > u
::std::string string
Definition: gtest.h:1979
Fourier transform phase factor support.
The result of hadron 2pt correlators.
Definition: hadron_2pt.h:17
Momentum projected correlator.
Definition: hadron_2pt.h:31
multi1d< DComplex > corr
Definition: hadron_2pt.h:33
The result of hadron 2pt correlators.
Definition: hadron_2pt.h:26
std::list< Mom_t > corrs
Definition: hadron_2pt.h:37
XMLBufferWriter xml_regres
Definition: hadron_2pt.h:39
Handle< HadronContractResult_t > serialize() const
Definition: hadron_2pt.cc:12
XMLBufferWriter xml
Definition: hadron_2pt.h:36
Param struct for SftMom.
Definition: sftmom.h:20