Difference between revisions of "Sphericity"

From Particle Wiki
Jump to: navigation, search
(Redirected page to Sphericity tensor)
 
Line 1: Line 1:
The '''sphericity tensor''' is the basis for calculation of '''sphericity''' and '''aplanarity''', two [[event shape]] observables particularly suited for <math>e^+ e^- \rightarrow Z^0/\gamma* \rightarrow q\bar{q}</math>, and routinely used in several [[LEP]] analyses.
+
#REDIRECT [[Sphericity tensor]]
 
+
== Definition ==
+
The sphericity tensor is defined as:
+
 
+
<math>S^{ab} = \frac{\sum_i p_i^a p_i^b}{\sum_i |p_i|^2}.</math>
+
 
+
Here <math>p_i</math> are the four-momenta of all particles in an event. Superscript ''a'' and ''b'' indicates spatial components, and the sphericity tensor can thus be represented as a 3-by-3 matrix. As such, three eigenvalues can be found. If they are ordered as <math>\lambda_1 \geq \lambda_2 \geq \lambda_3</math>, the sphericity is defined as:
+
 
+
<math>S = \frac{3}{2}(\lambda_2 + \lambda_3).</math>
+
 
+
The similar quantity aplanarity is defined as:
+
 
+
<math>A = \frac{3}{2}\lambda_1</math>
+
 
+
== Physical meaning ==
+
The eigenvector corresponding to <math>\lambda_1</math> is called the sphericity axis. ''S'' measures the amount of <math>p_\perp^2</math> with respect to that axis, and is constrained to values <math>1 \geq S \geq 0</math>. An event with sphericity 0 is a clean dijet event, and sphericity 1 signifies an isotropic event.
+
 
+
The eigenvectors corresponding to <math>\lambda_2</math> and <math>\lambda_3</math> spans a plane, the so-called sphericity plane. Aplanarity measures the <math>p_\perp</math> out of that plane, is constrained to <math>0.5 \geq A \geq 0</math>. Similarly to ''S'', ''A'' is used to signify the isotropicity of the event.
+
 
+
Sphericity is not an [[Infrared safety|infrared safe]] quantity. Since it is quadratic in particle momenta, its value will change if a particle splits up into two collinear particles.
+
 
+
[[File:ptout-aleph-mcplots.png|thumb|left|alt=The ALEPH measurement of out of plane transverse momentum.|The ALEPH measurement of out of plane transverse momentum, compared to standard event generators. From [[MCPLOTS]].]]
+
 
+
== Data and description ==
+
Sphericity and aplanarity was measured in all the LEP experiments, and the data are particularly important for tuning of [[parton shower|parton showers]]. Measurements and comparisons to event generators can be found at MCplots for [http://mcplots.cern.ch/?query=plots,ee,zhad,S sphericity] and [http://mcplots.cern.ch/?query=plots,ee,zhad,A aplanarity].
+
 
+
The <math>p_\perp</math> out of the sphericity plane is a particularly interesting observable, as it has been problematic to describe for all the standard parton shower generators, see ''e.g.'' the measurement by [[ALEPH]] in the figure.
+
 
+
== In Rivet ==
+
In the [[Rivet]] framework, projections are in place to calculate the sphericity tensor, its eigenvalues and corresponding eigenvectors. Below example code is shown for calculating them all. The example is a full Rivet analysis in itself, which can be compiled with <code>rivet-buildplugin RivetSphericityExample.so SphericityExample.cc --std=c++11</code>. The example just calculates the quantities. One should then fill histograms as needed, etc.
+
 
+
<syntaxhighlight lang="cpp">
+
// -*- C++ -*-
+
#include "Rivet/Analysis.hh"
+
#include "Rivet/Projections/ChargedFinalState.hh"
+
#include "Rivet/Projections/Sphericity.hh"
+
 
+
namespace Rivet {
+
 
+
  /// @brief Sphericity example calculation
+
  class SphericityExample : public Analysis {
+
  public:
+
 
+
    /// Constructor
+
    SphericityExample()
+
      : Analysis("SphericityExample")
+
    {    }
+
 
+
    /// @name Analysis methods
+
    //@{
+
 
+
    void init() {
+
      // Projection containing charged particles of the event
+
      const ChargedFinalState cfs;
+
      addProjection(cfs, "CFS");
+
      // The sphericity projection
+
      addProjection(Sphericity(cfs), "Sphericity");
+
    }
+
 
+
    /// Perform the per-event analysis
+
    void analyze(const Event& event) {
+
      // The charged final state particles
+
      const ChargedFinalState& cfs = applyProjection<ChargedFinalState>(event, "CFS");
+
      // Apply the projection
+
      const Sphericity& sphericity = applyProjection<Sphericity>(event, "Sphericity");
+
      // Calculate the sphericity
+
      const double sph = sphericity.sphericity();
+
      // Calculate the aplanarity
+
      const double apl = sphericity.aplanarity();
+
     
+
      // We now loop over the charged particles
+
      for(const Particle& p : cfs.particles()){
+
// We calculated the particle pT wrt. the axes of the sphericity plane
+
// First pTout
+
const double pTout = dot(p.p3(),sphericity.sphericityMinorAxis());
+
// Then pTin
+
const double pTin = dot(p.p3(),sphericity.sphericityMajorAxis());
+
      }
+
    }
+
   
+
    void finalize() {
+
    }
+
 
+
    //@}
+
  };
+
 
+
  // The hook for the plugin system
+
  DECLARE_RIVET_PLUGIN(SphericityExample);
+
 
+
 
+
}
+
 
+
</syntaxhighlight>
+

Latest revision as of 10:38, 25 November 2016

Redirect to: