AmpGen 2.1
Loading...
Searching...
No Matches
Kinematics

Detailed Description

Assorted functors for calculating kinematic quantities on events, such as helicity cosines and acoplanarities. Also contains utilities for boosting and rotating four vectors and building general transform sequences on different Lorentz objects.

Classes

class  AmpGen::HelicityCosine
 Functor to compute the angle between set of particles {1} and {2} in the rest frame of set {3}. More...
 
class  AmpGen::MomentumTransfer
 Functor to calculate the linear momemtum between particles {1} and {2} in the rest frame of {1} + {2}. More...
 

Functions

double AmpGen::acoplanarity (const Event &evt)
 The extent to which a four body decay occurs within a single decay frame.
 
double AmpGen::dotProduct (const TLorentzVector &p1, const TLorentzVector &p2, const TLorentzVector &pX)
 Helper function to calculate the (space-like) dot product between vectors p1 and p2 in the rest frame of pX.
 
TLorentzVector AmpGen::pFromEvent (const Event &evt, const unsigned &ref)
 Helper function to extract a TLorentzVector of the ith decay product from an AmpGen::Event.
 
TLorentzVector AmpGen::pFromEvent (const Event &evt, const std::vector< unsigned > &ref)
 Helper function to extract a TLorentzVector of the sum of {2} decay product from an AmpGen::Event.
 

Function Documentation

◆ acoplanarity()

double AmpGen::acoplanarity ( const Event & evt)

Defined by the angle between the normals of decay planes of two of the quasi two-body subsystems, i.e.

\[ \chi = \cos^{-1} \left( \frac{ ( p_1 \times p_2 ) \cdot ( p_3 \times p_4 ) }{ | p_1 \times p_2 | | p_3 \times p_4 | } \right), \]

where each of the three-vectors is calculated in the rest frame of the decaying particle.

◆ dotProduct()

double AmpGen::dotProduct ( const TLorentzVector & p1,
const TLorentzVector & p2,
const TLorentzVector & pX )


Helper function to calculate the (space-like) dot product between vectors p1 and p2 in the rest frame of pX, which is given by

\[ d = \left( -g_{\mu\nu} + \frac{p_X^{\mu}p_X^{\nu}}{p_X^2} \right) p_1^{\mu} p_2^{\nu} \]

◆ pFromEvent() [1/2]

TLorentzVector AmpGen::pFromEvent ( const Event & evt,
const std::vector< unsigned > & ref )

◆ pFromEvent() [2/2]

TLorentzVector AmpGen::pFromEvent ( const Event & evt,
const unsigned & ref )