2#ifndef RIVET_DISRapidityGap_HH
3#define RIVET_DISRapidityGap_HH
5#include "Rivet/Projections/DISKinematics.hh"
6#include "Rivet/Projections/DISFinalState.hh"
7#include "Rivet/Particle.hh"
8#include "Rivet/Event.hh"
27 using Projection::operator =;
30 double t()
const {
return _t; }
33 double gap()
const {
return _gap; }
36 double gapUpp()
const {
return _gapUpp; }
39 double gapLow()
const {
return _gapLow; }
43 if (f == DISFrame::LAB)
return _ePpzX_LAB;
44 else if (f == DISFrame::XCM)
return _ePpzX_XCM;
45 else return _ePpzX_HCM;
50 if (f == DISFrame::LAB)
return _eMpzX_LAB;
51 else if (f == DISFrame::XCM)
return _eMpzX_XCM;
52 else return _eMpzX_HCM;
60 if (f == DISFrame::LAB)
return _pX_LAB;
61 else if (f == DISFrame::XCM)
return _pX_XCM;
69 if (f == DISFrame::LAB)
return _pY_LAB;
70 else if (f == DISFrame::XCM)
return _pY_XCM;
78 if (f == DISFrame::LAB)
return _momX_LAB;
79 else if (f == DISFrame::XCM)
return _momX_XCM;
80 else return _momX_HCM;
87 if (f == DISFrame::LAB)
return _momY_LAB;
88 else if (f == DISFrame::XCM)
return _momY_XCM;
89 else return _momY_HCM;
95 double m2X()
const {
return _M2X; }
100 double m2Y()
const {
return _M2Y; }
116 double _M2X, _M2Y, _t;
117 double _gap, _gapUpp, _gapLow;
118 double _ePpzX_LAB, _eMpzX_LAB;
119 double _ePpzX_HCM, _eMpzX_HCM;
120 double _ePpzX_XCM, _eMpzX_XCM;
124 Particles _pX_HCM, _pY_HCM, _pX_LAB, _pY_LAB, _pX_XCM, _pY_XCM;
Final state particles boosted to the hadronic center of mass system.
Definition DISFinalState.hh:14
Get the DIS kinematic variables and relevant boosts for an event.
Definition DISKinematics.hh:19
Get the incoming and outgoing hadron in a diffractive ep event.
Definition DISRapidityGap.hh:14
double EpPzX(const DISFrame &f) const
Definition DISRapidityGap.hh:42
double gapUpp() const
The upper edge of the largest gap, relative to the DIS event orientation.
Definition DISRapidityGap.hh:36
const Particles & systemY(const DISFrame &f) const
Definition DISRapidityGap.hh:68
const FourMomentum pY(const DISFrame &f) const
Definition DISRapidityGap.hh:86
double emPzX(const DISFrame &f) const
Definition DISRapidityGap.hh:49
virtual void project(const Event &e)
virtual CmpState compare(const Projection &p) const
double gap() const
The absolute size of the largest rapidity gap.
Definition DISRapidityGap.hh:33
double m2X() const
Definition DISRapidityGap.hh:95
double gapLow() const
The lower edge of the largest gap, relative to the DIS event orientation.
Definition DISRapidityGap.hh:39
double m2Y() const
Definition DISRapidityGap.hh:100
const FourMomentum pX(const DISFrame &f) const
Definition DISRapidityGap.hh:77
const Particles & systemX(const DISFrame &f) const
Definition DISRapidityGap.hh:59
double t() const
Definition DISRapidityGap.hh:30
Representation of a HepMC event, and enabler of Projection caching.
Definition Event.hh:22
Specialized version of the FourVector with momentum/energy functionality.
Definition Vector4.hh:316
Specialised vector of Particle objects.
Definition Particle.hh:21
const PROJ & declare(const PROJ &proj, const std::string &name) const
Register a contained projection (user-facing version)
Definition ProjectionApplier.hh:175
Base class for all Rivet projections.
Definition Projection.hh:29
void setName(const std::string &name)
Used by derived classes to set their name.
Definition Projection.hh:148
Definition MC_CENT_PPB_Projections.hh:10
DISFrame
Type of DIS boost to apply.
Definition DISKinematics.hh:15