![]() |
|
|||
File indexing completed on 2025-04-19 09:09:48
0001 #ifndef ATOOLS_Phys_BreitBoost_H 0002 #define ATOOLS_Phys_BreitBoost_H 0003 #include "ATOOLS/Math/Poincare.H" 0004 0005 namespace ATOOLS { 0006 0007 class Cluster_Amplitude; 0008 0009 class BreitBoost : public Poincare_Sequence { 0010 private: 0011 /// helper doing the actual work in the constructors 0012 void _init(const Vec4D& Q, const Vec4D& hadin); 0013 0014 /// save dis variables 0015 double m_Q2, m_x; 0016 0017 public: 0018 /* 0019 Construct a boost into the Breit frame. 0020 0021 The breit frame is defined by the virtual photon momentum \p Q, and the 0022 incoming hadron momentum \p hadin. 0023 0024 Incoming momenta are assumed incoming, i.e. with positive energies. The 0025 hadron momentum should be projected to zero mass if necessary beforehand. 0026 */ 0027 BreitBoost(const Vec4D& Q, const Vec4D& hadin); 0028 0029 0030 /* 0031 Constructor using incoming and outgoing lepton momenta to obtain Q. 0032 0033 Incoming momenta are assumed incoming, i.e. with positive energies. The 0034 hadron momentum should be projected to zero mass if necessary beforehand. 0035 */ 0036 BreitBoost(const Vec4D& lepin, const Vec4D& lepout, const Vec4D& hadin); 0037 0038 /* 0039 Constructor using information from the amplitude. 0040 0041 Convenience funtion, takes lepin and lepout from \p ampl, and 0042 hadin from the global beam information, projected to zero mass. 0043 */ 0044 BreitBoost(Cluster_Amplitude *const ampl); 0045 0046 /// Convenience function to apply boost to Cluster_Amplitude 0047 void Apply(Cluster_Amplitude *const ampl) const; 0048 0049 /// access dis variables 0050 inline double Q2() const { return m_Q2; } 0051 inline double x() const { return m_x; } 0052 }; 0053 0054 } 0055 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |