CHROMA
formfac_w.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Form-factors
4  *
5  * Form factors constructed from a quark and a sequential quark propagator
6  */
7 
8 #ifndef __formfac_h__
9 #define __formfac_h__
10 
11 #include "util/ft/sftmom.h"
12 
13 namespace Chroma
14 {
15 
16  /*
17  * Structures for hadron parts
18  *
19  * \ingroup hadron
20  *
21  * @{
22  */
24  {
25  int magic; // magic number for sanity checks
26  multi1d<int> inser_mom;
27  multi1d<ComplexF> local_current;
28  multi1d<ComplexF> nonlocal_current;
29  };
30 
32  {
34  multi1d<FormFac_momenta_t> momenta;
35  };
36 
38  {
39  int output_version; // Unique id for each output version of the structures
40  multi1d<FormFac_insertion_t> formFac;
41  };
42 
43 
44  // Readers and writers
45  void read(BinaryReader& bin, FormFac_momenta_t& mom);
46  void read(BinaryReader& bin, FormFac_insertion_t& mes);
47  void read(BinaryReader& bin, FormFac_insertions_t& form);
48  void write(BinaryWriter& bin, const FormFac_momenta_t& mom);
49  void write(BinaryWriter& bin, const FormFac_insertion_t& mes);
50  void write(BinaryWriter& bin, const FormFac_insertions_t& form);
51 
52 
53  /*! @} */ // end of group hadron
54 
55 
56 
57  //! Compute contractions for current insertion 3-point functions.
58  /*!
59  * \ingroup hadron
60  *
61  * This routine is specific to Wilson fermions!
62  *
63  * \param form structures holding formfactors ( Write )
64  * \param u gauge fields (used for non-local currents) ( Read )
65  * \param quark_propagator quark propagator ( Read )
66  * \param seq_quark_prop sequential quark propagator ( Read )
67  * \param gamma_insertion extra gamma insertion at source ( Read )
68  * \param phases fourier transform phase factors ( Read )
69  * \param t0 cartesian coordinates of the source ( Read )
70  */
71 
72  void FormFac(FormFac_insertions_t& form,
73  const multi1d<LatticeColorMatrix>& u,
74  const LatticePropagator& quark_propagator,
75  const LatticePropagator& seq_quark_prop,
76  int gamma_insertion,
77  const SftMom& phases,
78  int t0);
79 
80 } // end namespace Chroma
81 
82 #endif
Fourier transform phase factor support.
Definition: sftmom.h:35
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.
void FormFac(FormFac_insertions_t &form, const multi1d< LatticeColorMatrix > &u, const LatticePropagator &quark_propagator, const LatticePropagator &seq_quark_prop, int gamma_insertion, const SftMom &phases, int t0)
Compute contractions for current insertion 3-point functions.
Definition: formfac_w.cc:92
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
static multi1d< LatticeColorMatrix > u
Fourier transform phase factor support.
multi1d< FormFac_momenta_t > momenta
Definition: formfac_w.h:34
multi1d< FormFac_insertion_t > formFac
Definition: formfac_w.h:40
multi1d< int > inser_mom
Definition: formfac_w.h:26
multi1d< ComplexF > local_current
Definition: formfac_w.h:27
multi1d< ComplexF > nonlocal_current
Definition: formfac_w.h:28