Rivet::Hemispheres Class Reference

Calculate the hemisphere masses and broadenings. More...

`#include <Hemispheres.hh>`

Inheritance diagram for Rivet::Hemispheres:

## Public Member Functions

| Hemispheres (const AxesDefinition &ax)
| Constructor.
virtual const Projection * | clone () const
| Clone on the heap.
void | clear ()
bool | massMatchesBroadening ()
| Is the hemisphere with the max mass the same as the one with the max broadening?
Hemisphere masses (scaled by \f$ 1 / E^2_\mathrm{vis} \f$).
double | E2vis () const
double | Evis () const
double | M2high () const
double | Mhigh () const
double | M2low () const
double | Mlow () const
double | M2diff () const
double | Mdiff () const
double | scaledM2high () const
double | scaledMhigh () const
double | scaledM2low () const
double | scaledMlow () const
double | scaledM2diff () const
double | scaledMdiff () const
Hemisphere broadenings.
double | Bmax () const
double | Bmin () const
double | Bsum () const
double | Bdiff () const
Public Member Functions inherited from Rivet::Projection
bool | before (const Projection &p) const
virtual const std::set< PdgIdPair > | beamPairs () const
virtual std::string | name () const
| Get the name of the projection.
Projection & | addPdgIdPair (PdgId beam1, PdgId beam2)
| Add a colliding beam pair.
Log & | getLog () 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< ConstProjectionPtr > | getProjections () 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 Projection & | getProjection (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< Projection > | mkNamedPCmp (const Projection &otherparent, const std::string &pname) const
Cmp< Projection > | mkPCmp (const Projection &otherparent, const std::string &pname) const
Protected Member Functions inherited from Rivet::ProjectionApplier
Log & | getLog () const
ProjectionHandler & | getProjHandler () 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 hemisphere masses and broadenings.

Calculate the hemisphere masses and broadenings, with event hemispheres defined by the plane normal to the thrust vector, .

The "high" hemisphere mass, , is defined as

and the corresponding "low" hemisphere mass, , is the sum of momentum vectors in the opposite hemisphere, i.e. in the formula above.

Finally, we define a hemisphere mass difference:

Similarly to the masses, we also define hemisphere broadenings, using the momenta transverse to the thrust axis:

and then a set of the broadening maximum, minimum, sum and difference as follows:

Internally, this projection uses a Thrust or Sphericity projection to determine the hemisphere orientation.

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

- include/Rivet/Projections/Hemispheres.hh
- src/Projections/Hemispheres.cc