2 #ifndef RIVET_Sphericity_HH 3 #define RIVET_Sphericity_HH 5 #include "Rivet/Projection.hh" 6 #include "Rivet/Projections/AxesDefinition.hh" 7 #include "Rivet/Projections/FinalState.hh" 8 #include "Rivet/Event.hh" 87 double sphericity()
const {
return 3.0 / 2.0 * (lambda2() + lambda3()); }
89 double transSphericity()
const {
return 2.0 * lambda2() / ( lambda1() + lambda2() ); }
93 double aplanarity()
const {
return 3 / 2.0 * lambda3(); }
99 const Vector3& sphericityAxis()
const {
return _sphAxes[0]; }
115 double lambda1()
const {
return _lambdas[0]; }
116 double lambda2()
const {
return _lambdas[1]; }
117 double lambda3()
const {
return _lambdas[2]; }
129 void calc(
const vector<Particle>& fsparticles);
132 void calc(
const vector<FourMomentum>& fsmomenta);
135 void calc(
const vector<Vector3>& fsmomenta);
143 vector<double> _lambdas;
146 vector<Vector3> _sphAxes;
149 const double _regparam;
154 void _calcSphericity(
const vector<Vector3>& fsmomenta);
Definition: MC_JetAnalysis.hh:9
void calc(const FinalState &fs)
Manually calculate the sphericity, without engaging the caching system.
Definition: Sphericity.cc:40
void project(const Event &e)
Perform the projection on the Event.
Definition: Sphericity.cc:34
Base class for projections which define a spatial basis.
Definition: AxesDefinition.hh:20
double aplanarity() const
Aplanarity.
Definition: Sphericity.hh:93
const Vector3 & axis2() const
The 2nd most significant ("major") axis.
Definition: Sphericity.hh:108
Calculate the sphericity event shape.
Definition: Sphericity.hh:51
const Vector3 & sphericityMajorAxis() const
Sphericity major axis.
Definition: Sphericity.hh:101
const Vector3 & axis1() const
AxesDefinition axis accessors.
Definition: Sphericity.hh:107
const Vector3 & sphericityMinorAxis() const
Sphericity minor axis.
Definition: Sphericity.hh:103
Project out all final-state particles in an event. Probably the most important projection in Rivet! ...
Definition: FinalState.hh:14
virtual const Projection * clone() const
Clone on the heap.
Definition: Sphericity.hh:64
const Vector3 & axis3() const
The least significant ("minor") axis.
Definition: Sphericity.hh:109
double transSphericity() const
Transverse Sphericity.
Definition: Sphericity.hh:89
Base class for all Rivet projections.
Definition: Projection.hh:28
Three-dimensional specialisation of Vector.
Definition: Vector3.hh:26
Sphericity(double rparam=2.0)
Constructor.
Definition: Sphericity.hh:59
void clear()
Reset the projection.
Definition: Sphericity.cc:19
int compare(const Projection &p) const
Compare with other projections.
Definition: Sphericity.cc:25
double planarity() const
Planarity.
Definition: Sphericity.hh:91