#include <BPHKinematicFit.h>
Classes | |
struct | FlyingParticle |
Public Member Functions | |
BPHKinematicFit (const BPHKinematicFit &x)=delete | |
double | constrMass () const |
retrieve the constraint More... | |
double | constrSigma () const |
virtual const RefCountedKinematicVertex | currentDecayVertex () const |
virtual const RefCountedKinematicParticle | currentParticle () const |
get current particle More... | |
bool | getIndependentFit (const std::string &name) const |
retrieve independent fit flag More... | |
double | getMassSigma (const reco::Candidate *cand) const |
retrieve particle mass sigma More... | |
virtual bool | isEmpty () const |
get fit status More... | |
virtual bool | isValidFit () const |
virtual const RefCountedKinematicTree & | kinematicTree () const |
perform the kinematic fit and get the result More... | |
virtual const RefCountedKinematicTree & | kinematicTree (const std::string &name) const |
virtual const RefCountedKinematicTree & | kinematicTree (const std::string &name, double mass) const |
virtual const RefCountedKinematicTree & | kinematicTree (const std::string &name, double mass, double sigma) const |
virtual const RefCountedKinematicTree & | kinematicTree (const std::string &name, KinematicConstraint *kc) const |
virtual const RefCountedKinematicTree & | kinematicTree (const std::string &name, MultiTrackKinematicConstraint *kc) const |
virtual const std::vector< RefCountedKinematicParticle > & | kinParticles () const |
get kinematic particles More... | |
virtual std::vector< RefCountedKinematicParticle > | kinParticles (const std::vector< std::string > &names) const |
virtual ParticleMass | mass () const |
BPHKinematicFit & | operator= (const BPHKinematicFit &x)=delete |
virtual const math::XYZTLorentzVector & | p4 () const |
compute total momentum after the fit More... | |
virtual void | resetKinematicFit () const |
reset the kinematic fit More... | |
void | setConstraint (double mass, double sigma) |
apply a mass constraint More... | |
void | setIndependentFit (const std::string &name, bool flag=true, double mass=-1.0, double sigma=-1.0) |
set a decaying daughter as an unique particle fitted independently More... | |
virtual const RefCountedKinematicVertex | topDecayVertex () const |
virtual const RefCountedKinematicParticle | topParticle () const |
get top particle More... | |
~BPHKinematicFit () override | |
Public Member Functions inherited from BPHDecayVertex | |
BPHDecayVertex (const BPHDecayVertex &x)=delete | |
const edm::EventSetup * | getEventSetup () const |
retrieve EventSetup More... | |
const reco::Track * | getTrack (const reco::Candidate *cand) const |
get Track for a daughter More... | |
const std::string & | getTrackSearchList (const reco::Candidate *cand) const |
retrieve track search list More... | |
reco::TransientTrack * | getTransientTrack (const reco::Candidate *cand) const |
get TransientTrack for a daughter More... | |
BPHDecayVertex & | operator= (const BPHDecayVertex &x)=delete |
const std::vector< const reco::Track * > & | tracks () const |
get list of Tracks More... | |
const std::vector< reco::TransientTrack > & | transientTracks () const |
get list of TransientTracks More... | |
virtual bool | validTracks () const |
check for valid reconstructed vertex More... | |
virtual bool | validVertex () const |
virtual const reco::Vertex & | vertex (VertexFitter< 5 > *fitter=nullptr, const reco::BeamSpot *bs=nullptr, const GlobalPoint *priorPos=nullptr, const GlobalError *priorError=nullptr) const |
get reconstructed vertex More... | |
~BPHDecayVertex () override | |
Public Member Functions inherited from BPHDecayMomentum | |
BPHDecayMomentum (const BPHDecayMomentum &x)=delete | |
virtual const std::vector< std::string > & | compNames () const |
virtual const pat::CompositeCandidate & | composite () const |
get a composite by the simple sum of simple particles More... | |
virtual const std::vector< BPHRecoConstCandPtr > & | daughComp () const |
virtual const std::vector< const reco::Candidate * > & | daughFull () const |
virtual const std::vector< const reco::Candidate * > & | daughters () const |
virtual const std::vector< std::string > & | daugNames () const |
virtual BPHRecoConstCandPtr | getComp (const std::string &name) const |
virtual const reco::Candidate * | getDaug (const std::string &name) const |
BPHDecayMomentum & | operator= (const BPHDecayMomentum &x)=delete |
virtual const reco::Candidate * | originalReco (const reco::Candidate *daug) const |
get the original particle from the clone More... | |
virtual | ~BPHDecayMomentum () |
Protected Member Functions | |
virtual void | addK (const std::string &name, const BPHRecoConstCandPtr &comp) |
add a previously reconstructed particle giving it a name More... | |
virtual void | addK (const std::string &name, const reco::Candidate *daug, const std::string &searchList, double mass=-1.0, double sigma=-1.0) |
virtual void | addK (const std::string &name, const reco::Candidate *daug, double mass=-1.0, double sigma=-1.0) |
BPHKinematicFit () | |
BPHKinematicFit (const BPHKinematicFit *ptr) | |
void | setNotUpdated () const override |
Protected Member Functions inherited from BPHDecayVertex | |
virtual void | addV (const std::string &name, const BPHRecoConstCandPtr &comp) |
add a previously reconstructed particle giving it a name More... | |
virtual void | addV (const std::string &name, const reco::Candidate *daug, const std::string &searchList, double mass) |
BPHDecayVertex (const BPHDecayVertex *ptr, const edm::EventSetup *es) | |
BPHDecayVertex (const edm::EventSetup *es) | |
Protected Member Functions inherited from BPHDecayMomentum | |
virtual void | addP (const std::string &name, const BPHRecoConstCandPtr &comp) |
add a previously reconstructed particle giving it a name More... | |
virtual void | addP (const std::string &name, const reco::Candidate *daug, double mass=-1.0) |
BPHDecayMomentum () | |
BPHDecayMomentum (const std::map< std::string, Component > &daugMap) | |
BPHDecayMomentum (const std::map< std::string, Component > &daugMap, const std::map< std::string, BPHRecoConstCandPtr > compMap) | |
const std::vector< Component > & | componentList () const |
virtual void | fill (BPHRecoCandidate *ptr, int level) const =0 |
Private Member Functions | |
virtual void | addParticles (std::vector< RefCountedKinematicParticle > &kl, std::map< const reco::Candidate *, RefCountedKinematicParticle > &km, std::map< const BPHRecoCandidate *, RefCountedKinematicParticle > &cm) const |
virtual void | buildParticles () const |
virtual void | fitMomentum () const |
virtual void | getParticles (const std::string &moth, const std::string &daug, std::vector< RefCountedKinematicParticle > &kl, std::set< RefCountedKinematicParticle > &ks) const |
virtual void | getParticles (const std::string &moth, const std::vector< std::string > &daug, std::vector< RefCountedKinematicParticle > &kl, std::set< RefCountedKinematicParticle > &ks) const |
virtual const RefCountedKinematicTree & | kinematicTree (const std::vector< RefCountedKinematicParticle > &kPart, MultiTrackKinematicConstraint *kc) const |
virtual unsigned int | numParticles (const BPHKinematicFit *cand=nullptr) const |
virtual const BPHKinematicFit * | splitKP (const std::string &name, std::vector< RefCountedKinematicParticle > *kComp, std::vector< RefCountedKinematicParticle > *kTail=nullptr) const |
Static Private Member Functions | |
static void | insertParticle (RefCountedKinematicParticle &kp, std::vector< RefCountedKinematicParticle > &kl, std::set< RefCountedKinematicParticle > &ks) |
Private Attributes | |
std::vector< RefCountedKinematicParticle > | allParticles |
std::map< const BPHRecoCandidate *, FlyingParticle > | cKinP |
std::map< const reco::Candidate *, double > | dMSig |
std::map< const BPHRecoCandidate *, RefCountedKinematicParticle > | kCDMap |
std::map< const reco::Candidate *, RefCountedKinematicParticle > | kinMap |
RefCountedKinematicTree | kinTree |
double | massConst |
double | massSigma |
bool | oldFit |
bool | oldKPs |
bool | oldMom |
std::vector< BPHRecoConstCandPtr > | tmpList |
math::XYZTLorentzVector | totalMomentum |
Description: Highest-level base class to encapsulate kinematic fit operations
Definition at line 38 of file BPHKinematicFit.h.
|
delete |
Constructors are protected this object can exist only as part of a derived class
|
override |
|
protected |
Definition at line 39 of file BPHKinematicFit.cc.
|
protected |
Definition at line 48 of file BPHKinematicFit.cc.
References HltBtagPostValidation_cff::c, cKinP, BPHDecayMomentum::cMap, BPHDecayMomentum::componentList(), BPHDecayMomentum::daughComp(), BPHDecayMomentum::daughters(), BPHDecayMomentum::dMap, dMSig, mps_fire::i, dqmiolumiharvest::j, visualization-live-secondInstance_cfg::m, dqmiodumpmetadata::n, and BPHDecayMomentum::originalReco().
|
protectedvirtual |
add a previously reconstructed particle giving it a name
|
protectedvirtual |
add a simple particle and specify a criterion to search for the associated track
|
protectedvirtual |
add a simple particle giving it a name particles are cloned, eventually specifying a different mass and a sigma
Referenced by BPHRecoCandidate::add().
|
privatevirtual |
Definition at line 371 of file BPHKinematicFit.cc.
References addParticles(), cKinP, BPHRecoCandidate::clone(), AlCaHLTBitMon_QueryRunRegistry::comp, BPHDecayMomentum::daughComp(), BPHDecayMomentum::daughters(), dMSig, personalPlayback::fp, BPHDecayVertex::getTransientTrack(), isEmpty(), isValidFit(), visualization-live-secondInstance_cfg::m, mass(), dqmiodumpmetadata::n, KinematicParticleFactoryFromTransientTrack::particle(), setConstraint(), tmpList, topParticle(), and groupFilesInBlocks::tt.
Referenced by addParticles(), and buildParticles().
|
privatevirtual |
Definition at line 361 of file BPHKinematicFit.cc.
References addParticles(), allParticles, BPHDecayMomentum::daughFull(), kCDMap, kinMap, oldKPs, and findQualityFiles::size.
Referenced by kinParticles().
double BPHKinematicFit::constrMass | ( | ) | const |
retrieve the constraint
Definition at line 99 of file BPHKinematicFit.cc.
References massConst.
Referenced by BPHRecoCandidate::fill().
double BPHKinematicFit::constrSigma | ( | ) | const |
Definition at line 101 of file BPHKinematicFit.cc.
References massSigma.
Referenced by BPHRecoCandidate::fill().
|
virtual |
Definition at line 277 of file BPHKinematicFit.cc.
|
virtual |
|
privatevirtual |
Definition at line 538 of file BPHKinematicFit.cc.
References AlCaHLTBitMon_QueryRunRegistry::comp, BPHDecayMomentum::daughComp(), BPHDecayMomentum::daughters(), MillePedeFileConverter_cfg::e, KinematicState::globalMomentum(), isValidFit(), visualization-live-secondInstance_cfg::m, KinematicState::mass(), dqmiodumpmetadata::n, oldMom, mathSSE::sqrt(), topParticle(), totalMomentum, x, PV3DBase< T, PVType, FrameType >::x(), y, PV3DBase< T, PVType, FrameType >::y(), z, and PV3DBase< T, PVType, FrameType >::z().
Referenced by p4().
bool BPHKinematicFit::getIndependentFit | ( | const std::string & | name | ) | const |
retrieve independent fit flag
Definition at line 321 of file BPHKinematicFit.cc.
References cKinP, AlCaHLTBitMon_QueryRunRegistry::comp, BPHDecayMomentum::getComp(), and Skims_PA_cff::name.
Referenced by BPHRecoCandidate::fill().
double BPHKinematicFit::getMassSigma | ( | const reco::Candidate * | cand | ) | const |
retrieve particle mass sigma
Definition at line 315 of file BPHKinematicFit.cc.
References dMSig.
Referenced by BPHRecoCandidate::fill().
|
privatevirtual |
|
privatevirtual |
|
staticprivate |
|
virtual |
get fit status
Definition at line 256 of file BPHKinematicFit.cc.
References kinematicTree(), and kinTree.
Referenced by addParticles(), plotting.Plot::clone(), currentDecayVertex(), currentParticle(), topDecayVertex(), and topParticle().
|
virtual |
Definition at line 263 of file BPHKinematicFit.cc.
References topParticle().
Referenced by addParticles(), and fitMomentum().
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
privatevirtual |
Definition at line 525 of file BPHKinematicFit.cc.
References cppFunctionSkipper::exception, KinematicConstrainedVertexFitter::fit(), and kinTree.
|
virtual |
get kinematic particles
Definition at line 125 of file BPHKinematicFit.cc.
References allParticles, buildParticles(), and oldKPs.
Referenced by splitKP().
|
virtual |
|
virtual |
Definition at line 297 of file BPHKinematicFit.cc.
References KinematicState::isValid(), KinematicState::mass(), and topParticle().
Referenced by Particle.Particle::__str__(), DiObject.DiMuon::__str__(), BPHRecoCandidate::add(), addParticles(), BPHPlusMinusCandidate::build(), BPHRecoCandidate::build(), BPHDecayToV0DiffMassBuilder::buildCandidate(), BPHRecoCandidate::fill(), setConstraint(), and setIndependentFit().
|
privatevirtual |
Definition at line 461 of file BPHKinematicFit.cc.
References cKinP, AlCaHLTBitMon_QueryRunRegistry::comp, mps_fire::i, and dqmiodumpmetadata::n.
Referenced by splitKP().
|
delete |
|
virtual |
compute total momentum after the fit
Definition at line 308 of file BPHKinematicFit.cc.
References fitMomentum(), oldMom, and totalMomentum.
Referenced by Tau.Tau::dxy_approx(), Tau.Tau::dz(), and Lepton.Lepton::p4WithFSR().
|
virtual |
reset the kinematic fit
Definition at line 250 of file BPHKinematicFit.cc.
References oldFit, oldKPs, and oldMom.
Referenced by BPHDecayToResFlyingBuilder::build(), and setNotUpdated().
void BPHKinematicFit::setConstraint | ( | double | mass, |
double | sigma | ||
) |
apply a mass constraint
Operations
Definition at line 91 of file BPHKinematicFit.cc.
References mass(), massConst, massSigma, oldFit, oldKPs, and oldMom.
Referenced by addParticles(), and BPHRecoCandidate::fill().
void BPHKinematicFit::setIndependentFit | ( | const std::string & | name, |
bool | flag = true , |
||
double | mass = -1.0 , |
||
double | sigma = -1.0 |
||
) |
set a decaying daughter as an unique particle fitted independently
Definition at line 104 of file BPHKinematicFit.cc.
References cKinP, AlCaHLTBitMon_QueryRunRegistry::comp, RemoveAddSevLevel::flag, personalPlayback::fp, BPHDecayMomentum::getComp(), mass(), Skims_PA_cff::name, oldFit, oldKPs, and oldMom.
Referenced by BPHDecayToResFlyingBuilder::build(), and BPHRecoCandidate::fill().
|
overrideprotectedvirtual |
Reimplemented from BPHDecayVertex.
Reimplemented in BPHPlusMinusCandidate.
Definition at line 354 of file BPHKinematicFit.cc.
References resetKinematicFit(), and BPHDecayVertex::setNotUpdated().
Referenced by BPHPlusMinusCandidate::setNotUpdated().
|
privatevirtual |
Definition at line 487 of file BPHKinematicFit.cc.
References allParticles, cKinP, AlCaHLTBitMon_QueryRunRegistry::comp, BPHDecayMomentum::getComp(), kinParticles(), kinTree, Skims_PA_cff::name, numParticles(), and oldFit.
|
virtual |
Definition at line 290 of file BPHKinematicFit.cc.
References isEmpty(), and kinTree.
Referenced by BPHDecayToResFlyingBuilder::build().
|
virtual |
get top particle
Definition at line 284 of file BPHKinematicFit.cc.
References isEmpty(), and kinTree.
Referenced by addParticles(), fitMomentum(), isValidFit(), and mass().
|
mutableprivate |
Definition at line 148 of file BPHKinematicFit.h.
Referenced by buildParticles(), kinParticles(), and splitKP().
|
private |
Definition at line 137 of file BPHKinematicFit.h.
Referenced by addParticles(), BPHKinematicFit(), getIndependentFit(), numParticles(), setIndependentFit(), and splitKP().
|
private |
Definition at line 129 of file BPHKinematicFit.h.
Referenced by addParticles(), BPHKinematicFit(), and getMassSigma().
|
mutableprivate |
Definition at line 147 of file BPHKinematicFit.h.
Referenced by buildParticles().
|
mutableprivate |
Definition at line 146 of file BPHKinematicFit.h.
Referenced by buildParticles().
|
mutableprivate |
Definition at line 149 of file BPHKinematicFit.h.
Referenced by currentDecayVertex(), currentParticle(), isEmpty(), kinematicTree(), splitKP(), topDecayVertex(), and topParticle().
|
private |
Definition at line 125 of file BPHKinematicFit.h.
Referenced by constrMass(), kinematicTree(), and setConstraint().
|
private |
Definition at line 126 of file BPHKinematicFit.h.
Referenced by constrSigma(), kinematicTree(), and setConstraint().
|
mutableprivate |
Definition at line 144 of file BPHKinematicFit.h.
Referenced by kinematicTree(), resetKinematicFit(), setConstraint(), setIndependentFit(), and splitKP().
|
mutableprivate |
Definition at line 143 of file BPHKinematicFit.h.
Referenced by buildParticles(), kinParticles(), resetKinematicFit(), setConstraint(), and setIndependentFit().
|
mutableprivate |
Definition at line 145 of file BPHKinematicFit.h.
Referenced by fitMomentum(), p4(), resetKinematicFit(), setConstraint(), and setIndependentFit().
|
mutableprivate |
Definition at line 140 of file BPHKinematicFit.h.
Referenced by addParticles().
|
mutableprivate |
Definition at line 150 of file BPHKinematicFit.h.
Referenced by fitMomentum(), and p4().