Rivet  1.8.3
Public Member Functions | Protected Member Functions | List of all members
Rivet::ParisiTensor Class Reference

Calculate the Parisi event shape tensor (or linear momentum tensor). More...

#include <ParisiTensor.hh>

Inheritance diagram for Rivet::ParisiTensor:
Rivet::Projection Rivet::ProjectionApplier

Public Member Functions

 ParisiTensor (const FinalState &fsp)
 Constructor. The provided FinalState projection must live throughout the run.
virtual const Projectionclone () const
 Clone on the heap.
void clear ()
 Clear the projection.
Access the C and D params.
double C () const
double D () const
Access the eigenvalues of \f$\theta\f$.
double lambda1 () const
double lambda2 () const
double lambda3 () const
- Public Member Functions inherited from Rivet::Projection
bool before (const Projection &p) const
virtual const std::set< PdgIdPairbeamPairs () const
virtual std::string name () const
 Get the name of the projection.
ProjectionaddPdgIdPair (PdgId beam1, PdgId beam2)
 Add a colliding beam pair.
LoggetLog () const
 Get a Log object based on the getName() property of the calling projection object.
void setName (const std::string &name)
 Used by derived classes to set their name.
 Projection ()
 The default constructor.
virtual ~Projection ()
 The destructor.
- Public Member Functions inherited from Rivet::ProjectionApplier
 ProjectionApplier ()
 Constructor.
std::set< ConstProjectionPtrgetProjections () const
 Get the contained projections, including recursion.
template<typename PROJ >
const PROJ & getProjection (const std::string &name) const
 Get the named projection, specifying return type via a template argument.
const ProjectiongetProjection (const std::string &name) const
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const PROJ &proj) const
 Apply the supplied projection on event.
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const Projection &proj) const
 Apply the supplied projection on event.
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const std::string &name) const
 Apply the named projection on event.

Protected Member Functions

void project (const Event &e)
 Perform the projection on the Event.
int compare (const Projection &p) const
 Compare with other projections.
- Protected Member Functions inherited from Rivet::Projection
Cmp< ProjectionmkNamedPCmp (const Projection &otherparent, const std::string &pname) const
Cmp< ProjectionmkPCmp (const Projection &otherparent, const std::string &pname) const
- Protected Member Functions inherited from Rivet::ProjectionApplier
ProjectionHandlergetProjHandler () const
 Get a reference to the ProjectionHandler for this thread.
template<typename PROJ >
const PROJ & addProjection (const PROJ &proj, const std::string &name)

Detailed Description

Calculate the Parisi event shape tensor (or linear momentum tensor).

The Parisi event shape C and D variables are derived from the eigenvalues of the linear momentum tensor

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

which is actually a linearized (and hence infra-red safe) version of the Sphericity tensor.

Defining the three eigenvalues of $\theta$ $ \lambda_1 \ge \lambda_2 \ge \lambda_3 $, with $ \lambda_1 + \lambda_2 + \lambda_3 = 1 $, the C and D parameters are defined as

\[ C = 3(\lambda_1\lambda_2 + \lambda_1\lambda_3 + \lambda_2\lambda_3) \]

and

\[ D = 27 \lambda_1\lambda_2\lambda_3 \]

Internally, this Projection uses the Sphericity projection with the generalising $r$ parameter set to 1.


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