Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Sphericity Class Reference

#include <Sphericity.hh>

Inheritance diagram for Sphericity:

Inheritance graph
[legend]
Collaboration diagram for Sphericity:

Collaboration graph
[legend]
List of all members.

Detailed Description

Calculate the sphericity event shape.

The sphericity tensor (or quadratic momentum tensor) is defined as

\[ S^{\alpha \beta} = \frac{\sum_i p_i^\alpha p_i^\beta}{\sum_i |\mathbf{p}_i|^2} \]

, where the Greek indices are spatial components and the Latin indices are used for sums over particles. From this, the sphericity, aplanarity and planarity can be calculated by combinations of eigenvalues.

Defining the three eigenvalues $ \lambda_1 \ge \lambda_2 \ge \lambda_3 $, with $ \lambda_1 + \lambda_2 + \lambda_3 = 1 $, the sphericity is

\[ S = \frac{3}{2} (\lambda_2 + \lambda_3) \]

The aplanarity is $ A = \frac{3}{2}\lambda_3 $ and the planarity is $ P = \frac{2}{3}(S-2A) = \lambda_2 - \lambda_3 $. The eigenvectors define a set of spatial axes comparable with the thrust axes, but more sensitive to high momentum particles due to the quadratic sensitivity of the tensor to the particle momenta.

Since the sphericity is quadratic in the particle momenta, it is not an infrared safe observable in perturbative QCD. This can be fixed by adding a regularizing power of $r$ to the definition:

\[ S^{\alpha \beta} = \frac{\sum_i |\mathbf{p}_i|^{r-2} p_i^\alpha p_i^\beta} {\sum_i |\mathbf{p}_i|^r} \]

$r$ is available as a constructor argument on this class and will be taken into account by the Cmp<Projection> operation, so a single analysis can use several sphericity projections with different $r$ values without fear of a clash.

Definition at line 50 of file Sphericity.hh.


Public Member Functions

 Sphericity (FinalState &fsp, double rparam=2.0)
 Constructor. Supplied FinalState projection must live throughout the run.
string getName () const
 Return the name of the projection.
bool before (const Projection &p) const
virtual const Cuts getCuts () const
virtual const set< BeamPairgetBeamPairs () const
set< Projection * > getProjections () const
 Get the contained projections, including recursion.
const double sphericity () const
const double planarity () const
 Planarity.
const double aplanarity () const
 Aplanarity.
const Vector3 sphericityAxis () const
const Vector3 sphericityMajorAxis () const
const Vector3 sphericityMinorAxis () const
const double lambda1 () const
 Access the momentum tensor eigenvalues.
const double lambda2 () const
const double lambda3 () const

Protected Member Functions

void project (const Event &e)
 Perform the projection on the Event.
int compare (const Projection &p) const
 Compare with other projections.
ProjectionaddProjection (Projection &proj)
 Add a projection dependency to the projection list.
ProjectionaddBeamPair (const ParticleName &beam1, const ParticleName &beam2)
 Add a colliding beam pair.
ProjectionaddCut (const string &quantity, const Comparison &comparison, const double value)
 Add a cut.
LoggetLog ()
 Get a Log object based on the getName() property of the calling projection object.

Protected Attributes

Cuts _cuts
 Parameter constraints.
set< BeamPair_beamPairs
 Beam-type constraint.
set< Projection * > _projections
 Collection of pointers to projections, for automatically combining constraints.

Friends

class Event
 Event is a friend.
class Cmp<Projection>
 The Cmp specialization for Projection is a friend.

Constructor & Destructor Documentation

Sphericity FinalState fsp,
double  rparam = 2.0
[inline]
 

Constructor. Supplied FinalState projection must live throughout the run.

Definition at line 55 of file Sphericity.hh.


Member Function Documentation

Projection& addBeamPair const ParticleName beam1,
const ParticleName beam2
[inline, protected, inherited]
 

Add a colliding beam pair.

Definition at line 145 of file Projection.hh.

References Rivet::BeamPair.

Projection& addCut const string &  quantity,
const Comparison comparison,
const double  value
[inline, protected, inherited]
 

Add a cut.

Definition at line 151 of file Projection.hh.

Projection& addProjection Projection proj  )  [inline, protected, inherited]
 

Add a projection dependency to the projection list.

Definition at line 139 of file Projection.hh.

const double aplanarity  )  const [inline]
 

Aplanarity.

Definition at line 84 of file Sphericity.hh.

Referenced by ZPhys73C11::analyze(), and PL273B181::analyze().

bool before const Projection p  )  const [inline, inherited]
 

Determine whether this object should be ordered before the object p given as argument. If p is of a different class than this, the before() function of the corresponding type_info objects is used. Otherwise, if the objects are of the same class, the virtual compare(const Projection &) will be returned.

Definition at line 88 of file Projection.hh.

Referenced by less< const Rivet::Projection * >::operator()().

int compare const Projection p  )  const [protected, virtual]
 

Compare with other projections.

Implements Projection.

Definition at line 13 of file Sphericity.cc.

References Sphericity::_fsproj, Sphericity::_regparam, and Rivet::pcmp().

virtual const set<BeamPair> getBeamPairs  )  const [inline, virtual, inherited]
 

Return the BeamConstraints for this projection. Derived classes should ensure that all contained projections are registered in the _projections set for the beam constraint chaining to work.

Definition at line 114 of file Projection.hh.

References Cuts::end(), and Rivet::intersection().

virtual const Cuts getCuts  )  const [inline, virtual, inherited]
 

Return the Cuts objects for this projection. Derived classes should ensure that all contained projections are registered in the _projections set for the cut chaining to work.

Definition at line 102 of file Projection.hh.

References Cuts::addCuts().

Log & getLog  )  [protected, inherited]
 

Get a Log object based on the getName() property of the calling projection object.

Definition at line 7 of file Projection.cc.

References Log::getLog(), and Projection::getName().

Referenced by VetoedFinalState::project(), TrackJet::project(), TotalVisibleMomentum::project(), Sphericity::project(), Multiplicity::project(), ChargedLeptons::project(), ChargedFinalState::project(), and Beam::project().

string getName  )  const [inline, virtual]
 

Return the name of the projection.

Reimplemented from Projection.

Definition at line 64 of file Sphericity.hh.

set<Projection*> getProjections  )  const [inline, inherited]
 

Get the contained projections, including recursion.

Definition at line 128 of file Projection.hh.

References Cuts::end().

const double lambda1  )  const [inline]
 

Access the momentum tensor eigenvalues.

Definition at line 100 of file Sphericity.hh.

Referenced by Sphericity::project(), and ParisiTensor::project().

const double lambda2  )  const [inline]
 

Definition at line 101 of file Sphericity.hh.

Referenced by Sphericity::project(), and ParisiTensor::project().

const double lambda3  )  const [inline]
 

Definition at line 102 of file Sphericity.hh.

Referenced by Sphericity::project(), and ParisiTensor::project().

const double planarity  )  const [inline]
 

Planarity.

Definition at line 82 of file Sphericity.hh.

Referenced by ZPhys73C11::analyze(), and PL273B181::analyze().

void project const Event e  )  [protected, virtual]
 

Perform the projection on the Event.

Implements Projection.

Definition at line 29 of file Sphericity.cc.

References Event::applyProjection(), Rivet::fuzzyEquals(), Projection::getLog(), Sphericity::lambda1(), Sphericity::lambda2(), Sphericity::lambda3(), and FinalState::particles().

const double sphericity  )  const [inline]
 

Access the event shapes by name Sphericity

Definition at line 80 of file Sphericity.hh.

Referenced by ZPhys73C11::analyze(), and PL273B181::analyze().

const Vector3 sphericityAxis  )  const [inline]
 

Access the sphericity basis vectors Sphericity axis

Todo:
Implement something that isn't garbage!

Definition at line 90 of file Sphericity.hh.

References CLHEP::Vector3.

Referenced by ZPhys73C11::analyze().

const Vector3 sphericityMajorAxis  )  const [inline]
 

Sphericity major axis

Todo:
Implement something that isn't garbage!

Definition at line 93 of file Sphericity.hh.

References CLHEP::Vector3.

const Vector3 sphericityMinorAxis  )  const [inline]
 

Sphericity minor axis

Todo:
Implement something that isn't garbage!

Definition at line 96 of file Sphericity.hh.

References CLHEP::Vector3.

Referenced by ZPhys73C11::analyze().


Friends And Related Function Documentation

friend class Cmp<Projection> [friend, inherited]
 

The Cmp specialization for Projection is a friend.

Definition at line 31 of file Projection.hh.

friend class Event [friend, inherited]
 

Event is a friend.

Definition at line 28 of file Projection.hh.


Member Data Documentation

set<BeamPair> _beamPairs [protected, inherited]
 

Beam-type constraint.

Definition at line 164 of file Projection.hh.

Cuts _cuts [protected, inherited]
 

Parameter constraints.

Definition at line 161 of file Projection.hh.

set<Projection*> _projections [protected, inherited]
 

Collection of pointers to projections, for automatically combining constraints.

Definition at line 167 of file Projection.hh.


The documentation for this class was generated from the following files: