|
Laura++
3.6.0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
|
Class for calculating 3-body kinematic quantities.
More...
#include <LauKinematics.hh>
|
| LauKinematics (const Double_t m1, const Double_t m2, const Double_t m3, const Double_t mParent, const Bool_t calcSquareDPCoords=kFALSE, const Bool_t symmetricalDP=kFALSE, const Bool_t fullySymmetricDP=kFALSE) |
| Constructor. More...
|
|
virtual | ~LauKinematics () |
| Destructor.
|
|
void | squareDP (const Bool_t calcSquareDPCoords) |
| Enable/disable the calculation of square Dalitz plot co-ordinates. More...
|
|
Bool_t | squareDP () const |
| Are the square Dalitz plot co-ordinates being calculated? More...
|
|
Bool_t | gotSymmetricalDP () const |
| Is the DP symmetric? More...
|
|
Bool_t | gotFullySymmetricDP () const |
| Is the DP fully symmetric? More...
|
|
void | warningMessages (const Bool_t boolean) |
| Enable/disable warning messages.
|
|
void | updateKinematics (const Double_t m13Sq, const Double_t m23Sq) |
| Update all kinematic quantities based on the DP co-ordinates m13Sq and m23Sq. More...
|
|
void | updateSqDPKinematics (const Double_t mPrime, const Double_t thetaPrime) |
| Update all kinematic quantities based on the square DP co-ordinates m' and theta'. More...
|
|
void | updateKinematicsFrom23 (const Double_t m23, const Double_t c23) |
| Update all kinematic quantities based on m23 and cos(theta23) More...
|
|
void | updateKinematicsFrom13 (const Double_t m13, const Double_t c13) |
| Update all kinematic quantities based on m13 and cos(theta13) More...
|
|
void | updateKinematicsFrom12 (const Double_t m12, const Double_t c12) |
| Update all kinematic quantities based on m12 and cos(theta12) More...
|
|
Double_t | calcSqDPJacobian (const Double_t mPrime, const Double_t thPrime) const |
| Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the given point in the square DP. More...
|
|
Double_t | calcSqDPJacobian () const |
| Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the currently stored point in the square DP. More...
|
|
void | genFlatPhaseSpace (Double_t &m13Sq, Double_t &m23Sq) const |
| Routine to generate events flat in phase-space. More...
|
|
void | genFlatSqDP (Double_t &mPrime, Double_t &thetaPrime) const |
| Routine to generate events flat in the square Dalitz plot. More...
|
|
Bool_t | withinDPLimits (const Double_t m13Sq, const Double_t m23Sq) const |
| Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot. More...
|
|
Bool_t | withinDPLimits2 (const Double_t m13Sq, const Double_t m23Sq) const |
| Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot (alternate method) More...
|
|
Bool_t | withinSqDPLimits (const Double_t mPrime, const Double_t thetaPrime) const |
| Check whether a given (m',theta') point is within the kinematic limits of the Dalitz plot. More...
|
|
Double_t | calcThirdMassSq (const Double_t firstMassSq, const Double_t secondMassSq) const |
| Calculate the third invariant mass square from the two provided (e.g. mjkSq from mijSq and mikSq) More...
|
|
Double_t | distanceFromDPCentre () const |
| Calculate the distance from the currently set (m13Sq, m23Sq) point to the centre of the Dalitz plot (which is defined as the point where m12=m13=m23) More...
|
|
Double_t | distanceFromDPCentre (const Double_t m13Sq, const Double_t m23Sq) const |
| Calculate the distance from a given (m13Sq, m23Sq) point to the centre of the Dalitz plot (which is defined as the point where m12=m13=m23) More...
|
|
Double_t | getm12 () const |
| Get the m12 invariant mass. More...
|
|
Double_t | getm23 () const |
| Get the m23 invariant mass. More...
|
|
Double_t | getm13 () const |
| Get the m13 invariant mass. More...
|
|
Double_t | getm12Sq () const |
| Get the m12 invariant mass square. More...
|
|
Double_t | getm23Sq () const |
| Get the m23 invariant mass square. More...
|
|
Double_t | getm13Sq () const |
| Get the m13 invariant mass square. More...
|
|
Double_t | getc12 () const |
| Get the cosine of the helicity angle theta12. More...
|
|
Double_t | getc23 () const |
| Get the cosine of the helicity angle theta23. More...
|
|
Double_t | getc13 () const |
| Get the cosine of the helicity angle theta13. More...
|
|
Double_t | getmPrime () const |
| Get m' value. More...
|
|
Double_t | getThetaPrime () const |
| Get theta' value. More...
|
|
Double_t | getmParent () const |
| Get parent mass. More...
|
|
Double_t | getmParentSq () const |
| Get parent mass squared. More...
|
|
Double_t | getDPBoxArea () const |
| Get the box area defined from the kinematic bounds. More...
|
|
void | flipAndUpdateKinematics () |
| Flips the DP variables m13^2 <-> m23^2 and recalculates all kinematic quantities. More...
|
|
void | rotateAndUpdateKinematics () |
| Cyclically rotates the DP variables (m12 -> m23, m23 -> m13, m13 -> m12) and recalculates all kinematic quantities. More...
|
|
Double_t | getm1 () const |
| Get the m1 mass. More...
|
|
Double_t | getm2 () const |
| Get the m2 mass. More...
|
|
Double_t | getm3 () const |
| Get the m3 mass. More...
|
|
Double_t | getm23Min () const |
| Get the m23 minimum defined as (m2 + m3) More...
|
|
Double_t | getm13Min () const |
| Get the m13 minimum defined as (m1 + m3) More...
|
|
Double_t | getm12Min () const |
| Get the m12 minimum defined as (m1 + m2) More...
|
|
Double_t | getm23Max () const |
| Get the m23 maximum defined as (mParent - m1) More...
|
|
Double_t | getm13Max () const |
| Get the m13 maximum defined as (mParent - m2) More...
|
|
Double_t | getm12Max () const |
| Get the m12 maximum defined as (mParent - m3) More...
|
|
Double_t | getm23SqMin () const |
| Get the m23Sq minimum, (m2 + m3)^2. More...
|
|
Double_t | getm13SqMin () const |
| Get the m13Sq minimum, (m1 + m3)^2. More...
|
|
Double_t | getm12SqMin () const |
| Get the m12Sq minimum, (m1 + m2)^2. More...
|
|
Double_t | getm23SqMax () const |
| Get the m23Sq maximum, (mParent - m1)^2. More...
|
|
Double_t | getm13SqMax () const |
| Get the m13Sq maximum, (mParent - m2)^2. More...
|
|
Double_t | getm12SqMax () const |
| Get the m12Sq maximum, (mParent - m3)^2. More...
|
|
Double_t | getp1_12 () const |
| Get the momentum of the track 1 in 12 rest frame. More...
|
|
Double_t | getp3_12 () const |
| Get the momentum of the track 3 in 12 rest frame. More...
|
|
Double_t | getp2_23 () const |
| Get the momentum of the track 2 in 23 rest frame. More...
|
|
Double_t | getp1_23 () const |
| Get the momentum of the track 1 in 23 rest frame. More...
|
|
Double_t | getp1_13 () const |
| Get the momentum of the track 1 in 13 rest frame. More...
|
|
Double_t | getp2_13 () const |
| Get the momentum of the track 2 in 13 rest frame. More...
|
|
Double_t | getp1_Parent () const |
| Get the momentum of the track 1 in parent rest frame. More...
|
|
Double_t | getp2_Parent () const |
| Get the momentum of the track 2 in parent rest frame. More...
|
|
Double_t | getp3_Parent () const |
| Get the momentum of the track 3 in parent rest frame. More...
|
|
void | drawDPContour (const Int_t orientation=1323, const Int_t nbins=100) |
| Method to draw the Dalitz plot contours on the top of the histo previously drawn. More...
|
|
Double_t | getcov12 () const |
| Get covariant factor in 12 axis. More...
|
|
Double_t | getcov13 () const |
| Get covariant factor in 13 axis. More...
|
|
Double_t | getcov23 () const |
| Get covariant factor in 23 axis. More...
|
|
|
void | updateMassSq_m12 (const Double_t m12, const Double_t c12) |
| Update the variables m23Sq_ and m13Sq_ given the invariant mass m12 and the cosine of the helicity angle c12. More...
|
|
void | updateMassSq_m23 (const Double_t m23, const Double_t c23) |
| Update the variables m12Sq_ and m13Sq_ given the invariant mass m23 and the cosine of the helicity angle c23. More...
|
|
void | updateMassSq_m13 (const Double_t m13, const Double_t c13) |
| Update the variables m12Sq_ and m23Sq_ given the invariant mass m13 and the cosine of the helicity angle c13. More...
|
|
void | updateMassSquares (const Double_t m13Sq, const Double_t m23Sq) |
| Update some kinematic quantities based on the DP co-ordinates m13Sq and m23Sq. More...
|
|
void | updateSqDPMassSquares (const Double_t mPrime, const Double_t thetaPrime) |
| Update some kinematic quantities based on the square DP co-ordinates m' and theta'. More...
|
|
Double_t | cFromM (const Double_t mijSq, const Double_t mikSq, const Double_t mij, const Int_t i, const Int_t j, const Int_t k) const |
| General method to calculate the cos(helicity) variables from the masses of the particles. More...
|
|
Double_t | mFromC (const Double_t mijSq, const Double_t cij, const Double_t mij, const Int_t i, const Int_t j, const Int_t k) const |
| General method to calculate mikSq given mijSq and cosHel_ij. More...
|
|
Double_t | pCalc (const Double_t energy, const Double_t massSq) const |
| General method to calculate the momentum of a particle, given its energy and invariant mass squared. More...
|
|
Double_t | genm13Sq () const |
| Randomly generate the invariant mass squared m13Sq. More...
|
|
Double_t | genm23Sq () const |
| Randomly generate the invariant mass squared m23Sq. More...
|
|
Double_t | genm12Sq () const |
| Randomly generate the invariant mass squared m12Sq. More...
|
|
void | calcm12Sq () |
| Calculate m12Sq from m13Sq and m23Sq.
|
|
void | calcHelicities () |
| Calculate cosines of the helicity angles, momenta of daughters and bachelor in various ij rest frames.
|
|
void | calcSqDPVars () |
| Calculate the m' and theta' variables for the square Dalitz plot.
|
|
void | calcParentFrameMomenta () |
| Calculate the momenta of each daughter in the parent rest frame.
|
|
|
const Bool_t | symmetricalDP_ |
| Symmetrical DP.
|
|
const Bool_t | fullySymmetricDP_ |
| Fully-symmetrical DP.
|
|
const Double_t | m1_ |
| Mass of particle 1.
|
|
const Double_t | m2_ |
| Mass of particle 2.
|
|
const Double_t | m3_ |
| Mass of particle 3.
|
|
const Double_t | mParent_ |
| Mass of parent particle.
|
|
const Double_t | m1Sq_ |
| Mass of particle 1 squared.
|
|
const Double_t | m2Sq_ |
| Mass of particle 2 squared.
|
|
const Double_t | m3Sq_ |
| Mass of particle 3 squared.
|
|
const Double_t | mParentSq_ |
| Mass of parent particle squared.
|
|
std::vector< Double_t > | mass_ |
| Vector of daughter particles masses.
|
|
std::vector< Double_t > | mMin_ |
| Vector of the minimum mij values.
|
|
std::vector< Double_t > | mMax_ |
| Vector of the maximum mij values.
|
|
std::vector< Double_t > | mDiff_ |
| Vector of the difference between the mMax and mMin.
|
|
std::vector< Double_t > | mSq_ |
| Vector of daughter particles masses squared.
|
|
std::vector< Double_t > | mSqMin_ |
| Vector of the minimum mijSq values.
|
|
std::vector< Double_t > | mSqMax_ |
| Vector of the maximum mijSq values.
|
|
std::vector< Double_t > | mSqDiff_ |
| Vector of the difference between the mSqMax and mSqMin.
|
|
const Double_t | mDTot_ |
| Sum of the daughter masses.
|
|
const Double_t | massInt_ |
| Mass difference between the parent particle and the sum of the daughter particles.
|
|
const Double_t | mSqDTot_ |
| Sum of the squares of the daughter masses.
|
|
Double_t | m12_ |
| Invariant mass m12.
|
|
Double_t | m23_ |
| Invariant mass m23.
|
|
Double_t | m13_ |
| Invariant mass m13.
|
|
Double_t | m12Sq_ |
| Invariant mass m12 squared.
|
|
Double_t | m23Sq_ |
| Invariant mass m23 squared.
|
|
Double_t | m13Sq_ |
| Invariant mass m13 squared.
|
|
Double_t | c12_ |
| Cosine of the helicity angle theta12, which is defined as the angle between 1&3 in the rest frame of 1&2.
|
|
Double_t | c23_ |
| Cosine of the helicity angle theta23, which is defined as the angle between 1&2 in the rest frame of 2&3.
|
|
Double_t | c13_ |
| Cosine of the helicity angle theta13, which is defined as the angle between 1&2 in the rest frame of 1&3.
|
|
Double_t | mPrime_ |
| m' co-ordinate
|
|
Double_t | thetaPrime_ |
| theta' co-ordinate
|
|
Double_t | qi_ |
| Momentum q of particle i.
|
|
Double_t | qk_ |
| Momentum q of particle k.
|
|
Double_t | p1_12_ |
| Momentum of track 1 in 1-2 rest frame.
|
|
Double_t | p3_12_ |
| Momentum of track 3 in 1-2 rest frame.
|
|
Double_t | p2_23_ |
| Momentum of track 2 in 2-3 rest frame.
|
|
Double_t | p1_23_ |
| Momentum of track 1 in 2-3 rest frame.
|
|
Double_t | p1_13_ |
| Momentum of track 1 in 1-3 rest frame.
|
|
Double_t | p2_13_ |
| Momentum of track 2 in 1-3 rest frame.
|
|
Double_t | p1_Parent_ |
| Momentum of track 1 in parent rest frame.
|
|
Double_t | p2_Parent_ |
| Momentum of track 2 in parent rest frame.
|
|
Double_t | p3_Parent_ |
| Momentum of track 3 in parent rest frame.
|
|
Bool_t | squareDP_ |
| Should we calculate the square DP co-ordinates or not?
|
|
Bool_t | warnings_ |
| Enable/disable warning messages.
|
|
Class for calculating 3-body kinematic quantities.
Class for defining the many routines related to the three body kinematics. Given the two DP co-ordinates, all other useful quantities e.g. the helicity angles are calculated. Optionally, the so-called `‘square Dalitz plot’' quantities can also be calculated.
Definition at line 45 of file LauKinematics.hh.
◆ LauKinematics()
LauKinematics::LauKinematics |
( |
const Double_t |
m1, |
|
|
const Double_t |
m2, |
|
|
const Double_t |
m3, |
|
|
const Double_t |
mParent, |
|
|
const Bool_t |
calcSquareDPCoords = kFALSE , |
|
|
const Bool_t |
symmetricalDP = kFALSE , |
|
|
const Bool_t |
fullySymmetricDP = kFALSE |
|
) |
| |
Constructor.
- Parameters
-
[in] | m1 | the first daughter mass |
[in] | m2 | the second daughter mass |
[in] | m3 | the third daughter mass |
[in] | mParent | the parent particle mass |
[in] | calcSquareDPCoords | boolean flag to enable/disable calculation of the square Dalitz plot co-ordinates |
[in] | symmetricalDP | boolean flag to indicate whether the DP is symmetric (i.e. two identical particle in final state) |
[in] | fullySymmetricDP | boolean flag to indicate whether the DP is fully symmetric (i.e. all three final-state particles are identical) |
Definition at line 40 of file LauKinematics.cc.
◆ calcSqDPJacobian() [1/2]
Double_t LauKinematics::calcSqDPJacobian |
( |
| ) |
const |
Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the currently stored point in the square DP.
- Returns
- the jacobian of the transformation
Definition at line 171 of file LauKinematics.cc.
◆ calcSqDPJacobian() [2/2]
Double_t LauKinematics::calcSqDPJacobian |
( |
const Double_t |
mPrime, |
|
|
const Double_t |
thPrime |
|
) |
| const |
Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the given point in the square DP.
- Parameters
-
[in] | mPrime | the m' co-ordinate |
[in] | thPrime | the theta' co-ordinate |
- Returns
- the jacobian of the transformation
Definition at line 176 of file LauKinematics.cc.
◆ calcThirdMassSq()
Double_t LauKinematics::calcThirdMassSq |
( |
const Double_t |
firstMassSq, |
|
|
const Double_t |
secondMassSq |
|
) |
| const |
Calculate the third invariant mass square from the two provided (e.g. mjkSq from mijSq and mikSq)
- Parameters
-
[in] | firstMassSq | the first invariant mass squared |
[in] | secondMassSq | the second invariant mass squared |
- Returns
- the third invariant mass square
Definition at line 522 of file LauKinematics.cc.
◆ cFromM()
Double_t LauKinematics::cFromM |
( |
const Double_t |
mijSq, |
|
|
const Double_t |
mikSq, |
|
|
const Double_t |
mij, |
|
|
const Int_t |
i, |
|
|
const Int_t |
j, |
|
|
const Int_t |
k |
|
) |
| const |
|
protected |
General method to calculate the cos(helicity) variables from the masses of the particles.
- Parameters
-
[in] | mijSq | the mij invariant mass square |
[in] | mikSq | the mik invariant mass square |
[in] | mij | the mij invariant mass |
[in] | i | the index for the first track |
[in] | j | the index for the second track |
[in] | k | the index for the third track |
- Returns
- helicity angle in the ij rest frame
Definition at line 301 of file LauKinematics.cc.
◆ distanceFromDPCentre() [1/2]
Double_t LauKinematics::distanceFromDPCentre |
( |
| ) |
const |
Calculate the distance from the currently set (m13Sq, m23Sq) point to the centre of the Dalitz plot (which is defined as the point where m12=m13=m23)
- Returns
- the distance to the DP centre
Definition at line 528 of file LauKinematics.cc.
◆ distanceFromDPCentre() [2/2]
Double_t LauKinematics::distanceFromDPCentre |
( |
const Double_t |
m13Sq, |
|
|
const Double_t |
m23Sq |
|
) |
| const |
Calculate the distance from a given (m13Sq, m23Sq) point to the centre of the Dalitz plot (which is defined as the point where m12=m13=m23)
- Returns
- the distance to the DP centre
Definition at line 533 of file LauKinematics.cc.
◆ drawDPContour()
void LauKinematics::drawDPContour |
( |
const Int_t |
orientation = 1323 , |
|
|
const Int_t |
nbins = 100 |
|
) |
| |
Method to draw the Dalitz plot contours on the top of the histo previously drawn.
- Parameters
-
[in] | orientation | orientation used for the draw, with default set to 1323 that corresponds x = m13, y = m23 |
[in] | nbins | number of bins for the contour to be sampled over (default = 100) |
Definition at line 722 of file LauKinematics.cc.
◆ flipAndUpdateKinematics()
void LauKinematics::flipAndUpdateKinematics |
( |
| ) |
|
Flips the DP variables m13^2 <-> m23^2 and recalculates all kinematic quantities.
Useful in the case of symmetrical Dalitz plots, i.e. when two final state particles are identical
Definition at line 565 of file LauKinematics.cc.
◆ genFlatPhaseSpace()
void LauKinematics::genFlatPhaseSpace |
( |
Double_t & |
m13Sq, |
|
|
Double_t & |
m23Sq |
|
) |
| const |
Routine to generate events flat in phase-space.
- Parameters
-
[out] | m13Sq | the invariant mass squared of daughters 1 and 3 |
[out] | m23Sq | the invariant mass squared of daughters 2 and 3 |
Definition at line 412 of file LauKinematics.cc.
◆ genFlatSqDP()
void LauKinematics::genFlatSqDP |
( |
Double_t & |
mPrime, |
|
|
Double_t & |
thetaPrime |
|
) |
| const |
Routine to generate events flat in the square Dalitz plot.
- Parameters
-
[out] | mPrime | the m' variable |
[out] | thetaPrime | the theta' variable |
Definition at line 432 of file LauKinematics.cc.
◆ genm12Sq()
Double_t LauKinematics::genm12Sq |
( |
| ) |
const |
|
protected |
Randomly generate the invariant mass squared m12Sq.
- Returns
- the invariant mass squared m12Sq
Definition at line 690 of file LauKinematics.cc.
◆ genm13Sq()
Double_t LauKinematics::genm13Sq |
( |
| ) |
const |
|
protected |
Randomly generate the invariant mass squared m13Sq.
- Returns
- the invariant mass squared m13Sq
Definition at line 678 of file LauKinematics.cc.
◆ genm23Sq()
Double_t LauKinematics::genm23Sq |
( |
| ) |
const |
|
protected |
Randomly generate the invariant mass squared m23Sq.
- Returns
- the invariant mass squared m23Sq
Definition at line 684 of file LauKinematics.cc.
◆ getc12()
Double_t LauKinematics::getc12 |
( |
| ) |
const |
|
inline |
Get the cosine of the helicity angle theta12.
theta12 is defined as the angle between 1&3 in the rest frame of 1&2
- Returns
- the cosine of the helicity angle theta12
Definition at line 259 of file LauKinematics.hh.
◆ getc13()
Double_t LauKinematics::getc13 |
( |
| ) |
const |
|
inline |
Get the cosine of the helicity angle theta13.
theta13 is defined as the angle between 3&2 in the rest frame of 1&3
- Returns
- the cosine of the helicity angle theta13
Definition at line 275 of file LauKinematics.hh.
◆ getc23()
Double_t LauKinematics::getc23 |
( |
| ) |
const |
|
inline |
Get the cosine of the helicity angle theta23.
theta23 is defined as the angle between 3&1 in the rest frame of 2&3
- Returns
- the cosine of the helicity angle theta23
Definition at line 267 of file LauKinematics.hh.
◆ getcov12()
Double_t LauKinematics::getcov12 |
( |
| ) |
const |
|
inline |
Get covariant factor in 12 axis.
- Returns
- covariant factor in 12 axis
Definition at line 480 of file LauKinematics.hh.
◆ getcov13()
Double_t LauKinematics::getcov13 |
( |
| ) |
const |
|
inline |
Get covariant factor in 13 axis.
- Returns
- covariant factor in 13 axis
Definition at line 489 of file LauKinematics.hh.
◆ getcov23()
Double_t LauKinematics::getcov23 |
( |
| ) |
const |
|
inline |
Get covariant factor in 23 axis.
- Returns
- covariant factor in 23 axis
Definition at line 498 of file LauKinematics.hh.
◆ getDPBoxArea()
Double_t LauKinematics::getDPBoxArea |
( |
| ) |
const |
|
inline |
Get the box area defined from the kinematic bounds.
The box area is defined as:
[(M-m3)^2 - (m1+m2)^2]*[(M-m2)^2 - (m1+m3)^2] .:. (m13SqMax - m13SqMin)*(m23SqMax - m23SqMin)
- Returns
- the Dalitz plot box area
Definition at line 308 of file LauKinematics.hh.
◆ getm1()
Double_t LauKinematics::getm1 |
( |
| ) |
const |
|
inline |
◆ getm12()
Double_t LauKinematics::getm12 |
( |
| ) |
const |
|
inline |
Get the m12 invariant mass.
- Returns
- the m12 invariant mass
Definition at line 221 of file LauKinematics.hh.
◆ getm12Max()
Double_t LauKinematics::getm12Max |
( |
| ) |
const |
|
inline |
Get the m12 maximum defined as (mParent - m3)
- Returns
- the maximum value for m12
Definition at line 377 of file LauKinematics.hh.
◆ getm12Min()
Double_t LauKinematics::getm12Min |
( |
| ) |
const |
|
inline |
Get the m12 minimum defined as (m1 + m2)
- Returns
- the minimum value for m12
Definition at line 359 of file LauKinematics.hh.
◆ getm12Sq()
Double_t LauKinematics::getm12Sq |
( |
| ) |
const |
|
inline |
Get the m12 invariant mass square.
- Returns
- the m12 invariant mass square
Definition at line 239 of file LauKinematics.hh.
◆ getm12SqMax()
Double_t LauKinematics::getm12SqMax |
( |
| ) |
const |
|
inline |
Get the m12Sq maximum, (mParent - m3)^2.
- Returns
- the maximum value for m12Sq
Definition at line 413 of file LauKinematics.hh.
◆ getm12SqMin()
Double_t LauKinematics::getm12SqMin |
( |
| ) |
const |
|
inline |
Get the m12Sq minimum, (m1 + m2)^2.
- Returns
- the minimum value for m12Sq
Definition at line 395 of file LauKinematics.hh.
◆ getm13()
Double_t LauKinematics::getm13 |
( |
| ) |
const |
|
inline |
Get the m13 invariant mass.
- Returns
- the m13 invariant mass
Definition at line 233 of file LauKinematics.hh.
◆ getm13Max()
Double_t LauKinematics::getm13Max |
( |
| ) |
const |
|
inline |
Get the m13 maximum defined as (mParent - m2)
- Returns
- the maximum value for m13
Definition at line 371 of file LauKinematics.hh.
◆ getm13Min()
Double_t LauKinematics::getm13Min |
( |
| ) |
const |
|
inline |
Get the m13 minimum defined as (m1 + m3)
- Returns
- the minimum value for m13
Definition at line 353 of file LauKinematics.hh.
◆ getm13Sq()
Double_t LauKinematics::getm13Sq |
( |
| ) |
const |
|
inline |
Get the m13 invariant mass square.
- Returns
- the m13 invariant mass square
Definition at line 251 of file LauKinematics.hh.
◆ getm13SqMax()
Double_t LauKinematics::getm13SqMax |
( |
| ) |
const |
|
inline |
Get the m13Sq maximum, (mParent - m2)^2.
- Returns
- the maximum value for m13Sq
Definition at line 407 of file LauKinematics.hh.
◆ getm13SqMin()
Double_t LauKinematics::getm13SqMin |
( |
| ) |
const |
|
inline |
Get the m13Sq minimum, (m1 + m3)^2.
- Returns
- the minimum value for m13Sq
Definition at line 389 of file LauKinematics.hh.
◆ getm2()
Double_t LauKinematics::getm2 |
( |
| ) |
const |
|
inline |
◆ getm23()
Double_t LauKinematics::getm23 |
( |
| ) |
const |
|
inline |
Get the m23 invariant mass.
- Returns
- the m23 invariant mass
Definition at line 227 of file LauKinematics.hh.
◆ getm23Max()
Double_t LauKinematics::getm23Max |
( |
| ) |
const |
|
inline |
Get the m23 maximum defined as (mParent - m1)
- Returns
- the maximum value for m23
Definition at line 365 of file LauKinematics.hh.
◆ getm23Min()
Double_t LauKinematics::getm23Min |
( |
| ) |
const |
|
inline |
Get the m23 minimum defined as (m2 + m3)
- Returns
- the minimum value for m23
Definition at line 347 of file LauKinematics.hh.
◆ getm23Sq()
Double_t LauKinematics::getm23Sq |
( |
| ) |
const |
|
inline |
Get the m23 invariant mass square.
- Returns
- the m23 invariant mass square
Definition at line 245 of file LauKinematics.hh.
◆ getm23SqMax()
Double_t LauKinematics::getm23SqMax |
( |
| ) |
const |
|
inline |
Get the m23Sq maximum, (mParent - m1)^2.
- Returns
- the maximum value for m23Sq
Definition at line 401 of file LauKinematics.hh.
◆ getm23SqMin()
Double_t LauKinematics::getm23SqMin |
( |
| ) |
const |
|
inline |
Get the m23Sq minimum, (m2 + m3)^2.
- Returns
- the minimum value for m23Sq
Definition at line 383 of file LauKinematics.hh.
◆ getm3()
Double_t LauKinematics::getm3 |
( |
| ) |
const |
|
inline |
◆ getmParent()
Double_t LauKinematics::getmParent |
( |
| ) |
const |
|
inline |
◆ getmParentSq()
Double_t LauKinematics::getmParentSq |
( |
| ) |
const |
|
inline |
Get parent mass squared.
- Returns
- parent mass squared
Definition at line 299 of file LauKinematics.hh.
◆ getmPrime()
Double_t LauKinematics::getmPrime |
( |
| ) |
const |
|
inline |
◆ getp1_12()
Double_t LauKinematics::getp1_12 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 1 in 12 rest frame.
- Returns
- the momentum of track 1 in 12 rest frame
Definition at line 419 of file LauKinematics.hh.
◆ getp1_13()
Double_t LauKinematics::getp1_13 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 1 in 13 rest frame.
- Returns
- the momentum of track 1 in 13 rest frame
Definition at line 443 of file LauKinematics.hh.
◆ getp1_23()
Double_t LauKinematics::getp1_23 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 1 in 23 rest frame.
- Returns
- the momentum of track 1 in 23 rest frame
Definition at line 437 of file LauKinematics.hh.
◆ getp1_Parent()
Double_t LauKinematics::getp1_Parent |
( |
| ) |
const |
|
inline |
Get the momentum of the track 1 in parent rest frame.
- Returns
- the momentum of track 1 in parent rest frame
Definition at line 455 of file LauKinematics.hh.
◆ getp2_13()
Double_t LauKinematics::getp2_13 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 2 in 13 rest frame.
- Returns
- the momentum of track 2 in 13 rest frame
Definition at line 449 of file LauKinematics.hh.
◆ getp2_23()
Double_t LauKinematics::getp2_23 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 2 in 23 rest frame.
- Returns
- the momentum of track 2 in 23 rest frame
Definition at line 431 of file LauKinematics.hh.
◆ getp2_Parent()
Double_t LauKinematics::getp2_Parent |
( |
| ) |
const |
|
inline |
Get the momentum of the track 2 in parent rest frame.
- Returns
- the momentum of track 2 in parent rest frame
Definition at line 461 of file LauKinematics.hh.
◆ getp3_12()
Double_t LauKinematics::getp3_12 |
( |
| ) |
const |
|
inline |
Get the momentum of the track 3 in 12 rest frame.
- Returns
- the momentum of track 3 in 12 rest frame
Definition at line 425 of file LauKinematics.hh.
◆ getp3_Parent()
Double_t LauKinematics::getp3_Parent |
( |
| ) |
const |
|
inline |
Get the momentum of the track 3 in parent rest frame.
- Returns
- the momentum of track 3 in parent rest frame
Definition at line 467 of file LauKinematics.hh.
◆ getThetaPrime()
Double_t LauKinematics::getThetaPrime |
( |
| ) |
const |
|
inline |
◆ gotFullySymmetricDP()
Bool_t LauKinematics::gotFullySymmetricDP |
( |
| ) |
const |
|
inline |
Is the DP fully symmetric?
- Returns
- kTRUE if the DP is fully symmetric (i.e. daughters 1, 2 and 3 are identical), kFALSE otherwise
Definition at line 91 of file LauKinematics.hh.
◆ gotSymmetricalDP()
Bool_t LauKinematics::gotSymmetricalDP |
( |
| ) |
const |
|
inline |
Is the DP symmetric?
- Returns
- kTRUE if the DP is symmetric (i.e. daughters 1 and 2 are identical), kFALSE otherwise
Definition at line 85 of file LauKinematics.hh.
◆ mFromC()
Double_t LauKinematics::mFromC |
( |
const Double_t |
mijSq, |
|
|
const Double_t |
cij, |
|
|
const Double_t |
mij, |
|
|
const Int_t |
i, |
|
|
const Int_t |
j, |
|
|
const Int_t |
k |
|
) |
| const |
|
protected |
General method to calculate mikSq given mijSq and cosHel_ij.
- Parameters
-
[in] | mijSq | the mij invariant mass square |
[in] | cij | the helicity angle for the pair which is made from tracks i and j |
[in] | mij | the mij invariant mass |
[in] | i | the index for the first track |
[in] | j | the index for the second track |
[in] | k | the index for the third track |
- Returns
- the invariant mass square mikSq
Definition at line 357 of file LauKinematics.cc.
◆ pCalc()
Double_t LauKinematics::pCalc |
( |
const Double_t |
energy, |
|
|
const Double_t |
massSq |
|
) |
| const |
|
protected |
General method to calculate the momentum of a particle, given its energy and invariant mass squared.
- Parameters
-
[in] | energy | the energy of the particle |
[in] | massSq | the invariant mass squared of the particle |
- Returns
- the momentum of the particle
Definition at line 549 of file LauKinematics.cc.
◆ rotateAndUpdateKinematics()
void LauKinematics::rotateAndUpdateKinematics |
( |
| ) |
|
Cyclically rotates the DP variables (m12 -> m23, m23 -> m13, m13 -> m12) and recalculates all kinematic quantities.
Useful in the case of a fully symmetric Dalitz plot, i.e. when all three final state particles are identical
Definition at line 574 of file LauKinematics.cc.
◆ squareDP() [1/2]
Bool_t LauKinematics::squareDP |
( |
| ) |
const |
|
inline |
Are the square Dalitz plot co-ordinates being calculated?
- Returns
- kTRUE if the square Dalitz plot co-ordinates are being calculated, kFALSE otherwise
Definition at line 79 of file LauKinematics.hh.
◆ squareDP() [2/2]
void LauKinematics::squareDP |
( |
const Bool_t |
calcSquareDPCoords | ) |
|
|
inline |
Enable/disable the calculation of square Dalitz plot co-ordinates.
- Parameters
-
[in] | calcSquareDPCoords | kTRUE/kFALSE to enable/disable calculation of the square DP co-ordinates |
Definition at line 73 of file LauKinematics.hh.
◆ updateKinematics()
void LauKinematics::updateKinematics |
( |
const Double_t |
m13Sq, |
|
|
const Double_t |
m23Sq |
|
) |
| |
Update all kinematic quantities based on the DP co-ordinates m13Sq and m23Sq.
It can be useful to first check that the point is within the kinematic boundary (using LauKinematics::withinDPLimits) before calling this method.
- Parameters
-
[in] | m13Sq | the invariant mass squared of daughters 1 and 3 |
[in] | m23Sq | the invariant mass squared of daughters 2 and 3 |
Definition at line 128 of file LauKinematics.cc.
◆ updateKinematicsFrom12()
void LauKinematics::updateKinematicsFrom12 |
( |
const Double_t |
m12, |
|
|
const Double_t |
c12 |
|
) |
| |
Update all kinematic quantities based on m12 and cos(theta12)
- Parameters
-
[in] | m12 | the invariant mass of daughters 1 and 2 |
[in] | c12 | the cosine of the helicity angle theta12, |
- See also
- getc12
Definition at line 661 of file LauKinematics.cc.
◆ updateKinematicsFrom13()
void LauKinematics::updateKinematicsFrom13 |
( |
const Double_t |
m13, |
|
|
const Double_t |
c13 |
|
) |
| |
Update all kinematic quantities based on m13 and cos(theta13)
- Parameters
-
[in] | m13 | the invariant mass of daughters 1 and 3 |
[in] | c13 | the cosine of the helicity angle theta13, |
- See also
- getc13
Definition at line 644 of file LauKinematics.cc.
◆ updateKinematicsFrom23()
void LauKinematics::updateKinematicsFrom23 |
( |
const Double_t |
m23, |
|
|
const Double_t |
c23 |
|
) |
| |
Update all kinematic quantities based on m23 and cos(theta23)
- Parameters
-
[in] | m23 | the invariant mass of daughters 2 and 3 |
[in] | c23 | the cosine of the helicity angle theta23, |
- See also
- getc23
Definition at line 627 of file LauKinematics.cc.
◆ updateMassSq_m12()
void LauKinematics::updateMassSq_m12 |
( |
const Double_t |
m12, |
|
|
const Double_t |
c12 |
|
) |
| |
|
protected |
Update the variables m23Sq_ and m13Sq_ given the invariant mass m12 and the cosine of the helicity angle c12.
- Parameters
-
[in] | m12 | the invariant mass m12 |
[in] | c12 | the cosine of the helicity angle c12 |
Definition at line 613 of file LauKinematics.cc.
◆ updateMassSq_m13()
void LauKinematics::updateMassSq_m13 |
( |
const Double_t |
m13, |
|
|
const Double_t |
c13 |
|
) |
| |
|
protected |
Update the variables m12Sq_ and m23Sq_ given the invariant mass m13 and the cosine of the helicity angle c13.
- Parameters
-
[in] | m13 | the invariant mass m13 |
[in] | c13 | the cosine of the helicity angle c13 |
Definition at line 598 of file LauKinematics.cc.
◆ updateMassSq_m23()
void LauKinematics::updateMassSq_m23 |
( |
const Double_t |
m23, |
|
|
const Double_t |
c23 |
|
) |
| |
|
protected |
Update the variables m12Sq_ and m13Sq_ given the invariant mass m23 and the cosine of the helicity angle c23.
- Parameters
-
[in] | m23 | the invariant mass m12 |
[in] | c23 | the cosine of the helicity angle c23 |
Definition at line 583 of file LauKinematics.cc.
◆ updateMassSquares()
void LauKinematics::updateMassSquares |
( |
const Double_t |
m13Sq, |
|
|
const Double_t |
m23Sq |
|
) |
| |
|
protected |
Update some kinematic quantities based on the DP co-ordinates m13Sq and m23Sq.
Only the three invariant masses and their squares, plus the parent rest-frame momenta are updated.
- Parameters
-
[in] | m13Sq | the invariant mass squared of daughters 1 and 3 |
[in] | m23Sq | the invariant mass squared of daughters 2 and 3 |
Definition at line 198 of file LauKinematics.cc.
◆ updateSqDPKinematics()
void LauKinematics::updateSqDPKinematics |
( |
const Double_t |
mPrime, |
|
|
const Double_t |
thetaPrime |
|
) |
| |
Update all kinematic quantities based on the square DP co-ordinates m' and theta'.
It can be useful to first check that the point is within the kinematic boundary (using LauKinematics::withinSqDPLimits) before calling this method.
- Parameters
-
[in] | mPrime | the m' co-ordinate |
[in] | thetaPrime | the theta' co-ordinate |
Definition at line 147 of file LauKinematics.cc.
◆ updateSqDPMassSquares()
void LauKinematics::updateSqDPMassSquares |
( |
const Double_t |
mPrime, |
|
|
const Double_t |
thetaPrime |
|
) |
| |
|
protected |
Update some kinematic quantities based on the square DP co-ordinates m' and theta'.
Only m', theta', the three invariant masses and their squares, plus the parent rest-frame momenta are updated.
- Parameters
-
[in] | mPrime | the m' co-ordinate |
[in] | thetaPrime | the theta' co-ordinate |
Definition at line 221 of file LauKinematics.cc.
◆ withinDPLimits()
Bool_t LauKinematics::withinDPLimits |
( |
const Double_t |
m13Sq, |
|
|
const Double_t |
m23Sq |
|
) |
| const |
Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot.
This method first checks that m13Sq is within its absolute min and max and then for the given m13Sq calculates the local min and max of m23Sq and checks whether the given m23Sq satisfies these bounds.
- Parameters
-
[in] | m13Sq | the invariant mass squared of daughters 1 and 3 |
[in] | m23Sq | the invariant mass squared of daughters 2 and 3 |
- Returns
- kTRUE if the event is inside the kinematic limit, kFALSE otherwise
Definition at line 439 of file LauKinematics.cc.
◆ withinDPLimits2()
Bool_t LauKinematics::withinDPLimits2 |
( |
const Double_t |
m13Sq, |
|
|
const Double_t |
m23Sq |
|
) |
| const |
Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot (alternate method)
This method first checks that m23Sq is within its absolute min and max and then for the given m23Sq calculates the local min and max of m13Sq and checks whether the given m13Sq satisfies these bounds.
- Parameters
-
[in] | m13Sq | the m13 invariant mass pair squared |
[in] | m23Sq | the m23 invariant mass pair squared |
- Returns
- kTRUE if the event is inside the kinematic limit, kFALSE otherwise
Definition at line 477 of file LauKinematics.cc.
◆ withinSqDPLimits()
Bool_t LauKinematics::withinSqDPLimits |
( |
const Double_t |
mPrime, |
|
|
const Double_t |
thetaPrime |
|
) |
| const |
Check whether a given (m',theta') point is within the kinematic limits of the Dalitz plot.
- Parameters
-
[in] | mPrime | the m' co-ordinate |
[in] | thetaPrime | the theta' co-ordinate |
- Returns
- kTRUE if the event is inside the kinematic limit, kFALSE otherwise
Definition at line 511 of file LauKinematics.cc.
The documentation for this class was generated from the following files:
|