#include <TwoBodyDecayModel.h>
Public Member Functions | |
const std::pair< AlgebraicVector, AlgebraicVector > | cartesianSecondaryMomenta (const AlgebraicVector ¶m) |
const std::pair< AlgebraicVector, AlgebraicVector > | cartesianSecondaryMomenta (const TwoBodyDecay &tbd) |
const std::pair< AlgebraicVector, AlgebraicVector > | cartesianSecondaryMomenta (const TwoBodyDecayParameters &tbdparam) |
AlgebraicVector | convertCurvilinearToCartesian (const AlgebraicVector &curv, double zMagField) |
AlgebraicMatrix | curvilinearToCartesianJacobian (double rho, double theta, double phi, double zMagField) |
AlgebraicMatrix | curvilinearToCartesianJacobian (const AlgebraicVector &curv, double zMagField) |
AlgebraicMatrix | rotationMatrix (double px, double py, double pz) |
TwoBodyDecayModel (double mPrimary=91.1876, double mSecondary=0.105658) | |
~TwoBodyDecayModel () | |
Private Attributes | |
double | thePrimaryMass |
double | theSecondaryMass |
/class TwoBodyDecayModel
This class provides useful methods needed for the two-body decay model used by implementations of e.g. class TwoBodyDecayEstimator or TwoBodyDecayLinearizationPointFinder.
/author Edmund Widl
Definition at line 15 of file TwoBodyDecayModel.h.
TwoBodyDecayModel::TwoBodyDecayModel | ( | double | mPrimary = 91.1876 , |
double | mSecondary = 0.105658 |
||
) |
Definition at line 4 of file TwoBodyDecayModel.cc.
TwoBodyDecayModel::~TwoBodyDecayModel | ( | ) |
Definition at line 7 of file TwoBodyDecayModel.cc.
const std::pair< AlgebraicVector, AlgebraicVector > TwoBodyDecayModel::cartesianSecondaryMomenta | ( | const AlgebraicVector & | param | ) |
Momenta of the secondaries in cartesian repraesentation.
Definition at line 80 of file TwoBodyDecayModel.cc.
References alignmentValidation::c1, funct::cos(), AlCaHLTBitMon_ParallelJobs::p, SiStripOfflineCRack_cfg::p2, phi, TwoBodyDecayParameters::phi, BPhysicsValidation_cfi::pminus, BPhysicsValidation_cfi::pplus, HLT_2024v14_cff::pT2, multPhiCorr_741_25nsDY_cfi::px, TwoBodyDecayParameters::px, multPhiCorr_741_25nsDY_cfi::py, TwoBodyDecayParameters::py, TwoBodyDecayParameters::pz, rotationMatrix(), ALPAKA_ACCELERATOR_NAMESPACE::brokenline::rotMat, funct::sin(), mathSSE::sqrt(), thePrimaryMass, theSecondaryMass, TwoBodyDecayParameters::theta, and theta().
Referenced by cartesianSecondaryMomenta(), TwoBodyDecayTrajectoryState::construct(), TwoBodyDecayEstimator::constructMatrices(), and TwoBodyDecayMomConstraintProducer::momentaAtVertex().
const std::pair< AlgebraicVector, AlgebraicVector > TwoBodyDecayModel::cartesianSecondaryMomenta | ( | const TwoBodyDecay & | tbd | ) |
Momenta of the secondaries in cartesian repraesentation.
Definition at line 121 of file TwoBodyDecayModel.cc.
References cartesianSecondaryMomenta(), and TwoBodyDecay::parameters().
const std::pair< AlgebraicVector, AlgebraicVector > TwoBodyDecayModel::cartesianSecondaryMomenta | ( | const TwoBodyDecayParameters & | tbdparam | ) |
Momenta of the secondaries in cartesian repraesentation.
Definition at line 125 of file TwoBodyDecayModel.cc.
References cartesianSecondaryMomenta(), and TwoBodyDecayParameters::parameters().
AlgebraicVector TwoBodyDecayModel::convertCurvilinearToCartesian | ( | const AlgebraicVector & | curv, |
double | zMagField | ||
) |
Convert vector from curvilinear to cartesian coordinates (needs the z-component of magnetic field in inverse GeV as input).
Definition at line 69 of file TwoBodyDecayModel.cc.
References funct::cos(), hcal_runs::rt, funct::sin(), and funct::tan().
AlgebraicMatrix TwoBodyDecayModel::curvilinearToCartesianJacobian | ( | double | rho, |
double | theta, | ||
double | phi, | ||
double | zMagField | ||
) |
Jacobian for transformation from curvilinear to cartesian representation (needs the z-component of magnetic field in inverse GeV as input).
Definition at line 34 of file TwoBodyDecayModel.cc.
References conv, funct::cos(), phi, submitPVResolutionJobs::q, rho, funct::sin(), and theta().
Referenced by curvilinearToCartesianJacobian().
AlgebraicMatrix TwoBodyDecayModel::curvilinearToCartesianJacobian | ( | const AlgebraicVector & | curv, |
double | zMagField | ||
) |
Jacobian for transformation from curvilinear to cartesian representation (needs the z-component of magnetic field in inverse GeV as input).
Definition at line 65 of file TwoBodyDecayModel.cc.
References curvilinearToCartesianJacobian().
AlgebraicMatrix TwoBodyDecayModel::rotationMatrix | ( | double | px, |
double | py, | ||
double | pz | ||
) |
Rotates a vector pointing in z-direction into the direction defined by p=(px,py,pz).
Definition at line 9 of file TwoBodyDecayModel.cc.
References AlCaHLTBitMon_ParallelJobs::p, SiStripOfflineCRack_cfg::p2, pv::pT, HLT_2024v14_cff::pT2, multPhiCorr_741_25nsDY_cfi::px, multPhiCorr_741_25nsDY_cfi::py, ALPAKA_ACCELERATOR_NAMESPACE::brokenline::rotMat, and mathSSE::sqrt().
Referenced by cartesianSecondaryMomenta(), TwoBodyDecayDerivatives::dqsdm(), TwoBodyDecayDerivatives::dqsdphi(), TwoBodyDecayDerivatives::dqsdtheta(), and TwoBodyDecayLinearizationPointFinder::getLinearizationPoint().
|
private |
Definition at line 53 of file TwoBodyDecayModel.h.
Referenced by cartesianSecondaryMomenta().
|
private |
Definition at line 54 of file TwoBodyDecayModel.h.
Referenced by cartesianSecondaryMomenta().