FairRoot/PandaRoot
|
#include <RhoDecayTreeFitter.h>
Public Types | |
enum | FitStatus { UnFitted = -1, Success = 0, Failed, BadInput, NonConverged } |
Public Member Functions | |
RhoDecayTreeFitter (RhoCandidate *bc, int verbosity=0) | |
constructor from the particle (decay head) More... | |
RhoDecayTreeFitter (RhoCandidate *bc, const RhoVector3Err &pv, int verbosity=0) | |
constructor from the particle (decay head) and primary vertex More... | |
RhoDecayTreeFitter (RhoCandidate *bc, const RhoLorentzVectorErr &lv, int verbosity=0) | |
constructor from the particle (decay head) and pbeam More... | |
RhoDecayTreeFitter (RhoCandidate *bc, const RhoLorentzVectorErr &lv, const RhoVector3Err &pv, int verbosity=0) | |
constructor from the particle (decay head), pbeam and primary vertex More... | |
~RhoDecayTreeFitter () | |
destructor More... | |
void | setMassConstraint (RhoCandidate *cand, bool add=true) |
Add or remove a mass constraint. More... | |
void | setMassConstraint (RhoCandidate *cand, double mass) |
Add a constraint to a mass different from the property table mass. More... | |
Bool_t | Fit (int maxNumberOfIterations=10, double deltaChisquareConverged=0.01) |
Add or remove a mass constraintfor a certain ParticleID. More... | |
Bool_t | Fit () |
Bool_t | FitAll (int maxit=10, double dchiq=0.01) |
Bool_t | FitAll () |
std::string | print () const |
Print the result of the fit. More... | |
std::ostream & | fillStream (std::ostream &s) const |
Print the result of the fit. More... | |
RhoCandidate * | particle () const |
The top level particle that is fitted. More... | |
RhoCandidate * | fitParams (RhoCandidate *p=0) const |
double | chiSquare () const |
Total chisquare. More... | |
ChiSquare | chiSquare (RhoCandidate *p) const |
get the chisquare of everything 'downstream' of a particle More... | |
int | nDof () const |
Total number of DOFs. More... | |
FitStatus | status () const |
Status of fit. More... | |
int | nIter () const |
Number of iterations used by vertex fit. More... | |
RhoDoubleErr | decayLengthSum (RhoCandidate *, RhoCandidate *) const |
bool | updateCand (RhoCandidate *cand) const |
update a particlular candidate in the tree More... | |
bool | updateTree (RhoCandidate *cand) const |
update a particlular candidate in the tree More... | |
int | errCode () |
error code More... | |
void | setVerbose (int i) |
set the verbosity level (for debugging only) More... | |
void | SetToleranceZ (double z) |
DecayChain * | GetDecayChainDirty () |
RecoTrackStateProvider * | extrapolator () |
get the extrapolator More... | |
void | setStateProvider (RecoTrackStateProvider *extrapolator) |
set the track extrapolator More... | |
double | Chi2Contribution (const RhoCandidate *) |
double | GetChi2 () const |
int | GetNdf () const |
double | GetProb () const |
void | SetVerbose (Bool_t v=kTRUE) |
Protected Member Functions | |
RhoDoubleErr | decayLengthSum (const ParticleBase &, const ParticleBase &) const |
void | updateCand (const ParticleBase &pb, RhoCandidate *cand) const |
std::string | name (RhoCandidate *cand) const |
Name of a particle in the decay tree. More... | |
DecayChain * | decaychain () |
const DecayChain * | decaychain () const |
FitParams * | fitparams () |
const FitParams * | fitparams () const |
double | globalChiSquare () const |
double | add (RhoCandidate *cand) |
double | remove (RhoCandidate *cand) |
void | updateIndex () |
void | fit (int maxNumberOfIterations=10, double deltaChisquareConverged=0.01) |
Fit the decay tree. More... | |
void | fitOneStep () |
Fit just one step. More... | |
RhoCandidate * | fittedCand (RhoCandidate *cand, RhoCandidate *headoftree) const |
RhoCandidate & | HeadOfTree () const |
virtual Bool_t | FitNode (RhoCandidate *b) |
RhoCandidate * | CopyCand (RhoCandidate *) |
uppermost particle composite in tree More... | |
RhoCandidate * | CopyTree (RhoCandidate *) |
void | InsertChi2 (const RhoCandidate *bc, const double chi2) |
void | SetDaugthersFromComposite (RhoCandidate *cand) |
void | FindAndAddFinalStateDaughters (RhoCandidate *cand) |
void | SetFourMomentumByDaughters (RhoCandidate *composite) |
void | SetDecayVertex (RhoCandidate *composite, const TVector3 &vtx, const TMatrixD &CovVV) |
Protected Attributes | |
RecoTrackStateProvider * | m_extrapolator |
track extrapolator (if needed) More... | |
Bool_t | fVerbose |
RhoCandidate * | fHeadOfTree |
std::vector< RhoCandidate * > | fDaughters |
double | fChiSquare |
int | fNDegreesOfFreedom |
Definition at line 24 of file RhoDecayTreeFitter.h.
|
inherited |
Enumerator | |
---|---|
UnFitted | |
Success | |
Failed | |
BadInput | |
NonConverged |
Definition at line 59 of file Fitter.h.
RhoDecayTreeFitter::RhoDecayTreeFitter | ( | RhoCandidate * | bc, |
int | verbosity = 0 |
||
) |
RhoDecayTreeFitter::RhoDecayTreeFitter | ( | RhoCandidate * | bc, |
const RhoVector3Err & | pv, | ||
int | verbosity = 0 |
||
) |
constructor from the particle (decay head) and primary vertex
Definition at line 17 of file RhoDecayTreeFitter.cxx.
RhoDecayTreeFitter::RhoDecayTreeFitter | ( | RhoCandidate * | bc, |
const RhoLorentzVectorErr & | lv, | ||
int | verbosity = 0 |
||
) |
constructor from the particle (decay head) and pbeam
Definition at line 24 of file RhoDecayTreeFitter.cxx.
RhoDecayTreeFitter::RhoDecayTreeFitter | ( | RhoCandidate * | bc, |
const RhoLorentzVectorErr & | lv, | ||
const RhoVector3Err & | pv, | ||
int | verbosity = 0 |
||
) |
constructor from the particle (decay head), pbeam and primary vertex
Definition at line 32 of file RhoDecayTreeFitter.cxx.
RhoDecayTreeFitter::~RhoDecayTreeFitter | ( | ) |
destructor
Definition at line 40 of file RhoDecayTreeFitter.cxx.
|
protectedinherited |
Definition at line 324 of file Fitter.cxx.
References DecayTreeFitter::ParticleBase::addToConstraintList(), bp, DecayTreeFitter::ParticleBase::initCov(), DecayTreeFitter::ParticleBase::initPar1(), DecayTreeFitter::ParticleBase::initPar2(), offset(), and DecayTreeFitter::ParticleBase::updateIndex().
|
inherited |
access to the fitted candidates
Definition at line 86 of file RhoFitterBase.cxx.
References Double_t, RhoFitterBase::fChi2Map, uid(), and RhoCandidate::Uid().
|
inlineinherited |
|
inherited |
get the chisquare of everything 'downstream' of a particle
Definition at line 912 of file Fitter.cxx.
|
protectedinherited |
uppermost particle composite in tree
Definition at line 51 of file RhoFitterBase.cxx.
References RhoFactory::Instance(), RhoFactory::NewCandidate(), RhoCandidate::RemoveAssociations(), and RhoCandidate::SetFit().
Referenced by RhoFitterBase::CopyTree().
|
protectedinherited |
Definition at line 61 of file RhoFitterBase.cxx.
References RhoFitterBase::CopyCand(), RhoCandidate::Daughter(), i, RhoCandidate::IsComposite(), RhoCandidate::NDaughters(), and RhoCandidate::SetMotherLink().
Referenced by RhoFitterBase::RhoFitterBase().
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inherited |
Compute the decay length sum of two particles in the decay tree (useful for e.g. B->DD)
Definition at line 514 of file Fitter.cxx.
References DecayTreeFitter::ParticleBase::lenIndex(), DecayTreeFitter::ParticleBase::locate(), and DecayTreeFitter::ParticleBase::mother().
|
protectedinherited |
|
inlineinherited |
|
inlineinherited |
get the extrapolator
Definition at line 172 of file Fitter.h.
References DecayTreeFitter::Fitter::m_extrapolator.
|
inherited |
Print the result of the fit.
Definition at line 908 of file Fitter.cxx.
References print().
|
protectedinherited |
Definition at line 149 of file RhoFitterBase.cxx.
References RhoCandidate::Daughter(), RhoFitterBase::fDaughters, RhoCandidate::IsComposite(), RhoCandidate::IsLocked(), and RhoCandidate::NDaughters().
Referenced by Rho4CFitter::Fit(), RhoKinFitter::Fit(), and Rho4CFitter::FitConserveMasses().
|
inherited |
This function has to be overridden by the real algoritms implementations
Definition at line 95 of file RhoFitterBase.cxx.
References RhoFitterBase::fChi2Map, RhoFitterBase::fHeadOfTree, and RhoFitterBase::FitNode().
Referenced by ana_check(), ana_check_psi(), ana_complete(), ana_day1(), ana_invariantmass_2pi_tpc(), ana_multi(), anaDMesonsCharged(), anaideal_complete(), anatut_psi2s(), PndTripleAnaTask::DsDs2317Analysis(), PndPmtTask::Exec(), PndProdAnaTask::Exec(), PndLLbarAnaTask::Exec(), PndMyAnalysisTask::Exec(), PndSimpleCombinerTask::Exec(), DecayTreeFitter::Fitter::FitAll(), PndTripleAnaTask::JpsiAnalysis(), newana_check_eta(), poormantracks(), run_ana_eta_c_stt(), run_ana_eta_c_stt_v2(), run_ana_eta_c_tpc(), run_ana_invariantmass_2pi_stt(), run_ana_invariantmass_2pi_tpc(), run_ana_invariantmass_4pi_stt(), run_ana_invariantmass_4pi_tpc(), run_ana_mertens_evt7(), tut_ana(), tut_ana_fast(), tut_ana_fit(), tut_ana_ntp(), tut_ana_ntp_noqa(), and tut_ana_ntp_qa().
|
inlineinherited |
Add or remove a mass constraintfor a certain ParticleID.
Add a constraint to a mass different from the property table mass Fit the decay tree
Definition at line 103 of file Fitter.h.
References DecayTreeFitter::Fitter::fit(), DecayTreeFitter::Fitter::m_particle, DecayTreeFitter::Fitter::m_status, and DecayTreeFitter::Fitter::updateTree().
|
protectedinherited |
Fit the decay tree.
Definition at line 171 of file Fitter.cxx.
References fabs(), DecayTreeFitter::ErrCode::fastdivergingfit, max(), print(), DecayTreeFitter::ErrCode::slowdivergingfit, and vtxverbose.
Referenced by DecayTreeFitter::Fitter::Fit().
|
inherited |
Definition at line 101 of file RhoFitterBase.cxx.
References RhoFitterBase::fHeadOfTree, RhoCandidate::IsLocked(), and RhoFitterBase::IterateAndFit().
|
inlineinherited |
|
protectedvirtualinherited |
Reimplemented in RhoKinHyperonVtxFitter, RhoKinVtxFitter, and RhoKalmanVtxFitter.
Definition at line 130 of file RhoFitterBase.cxx.
Referenced by RhoFitterBase::Fit(), and RhoFitterBase::IterateAndFit().
|
protectedinherited |
Fit just one step.
Definition at line 294 of file Fitter.cxx.
References vtxverbose.
|
inlineinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
protectedinherited |
|
inlineinherited |
Definition at line 48 of file RhoFitterBase.h.
References RhoFitterBase::fChiSquare.
Referenced by ana_check(), ana_check_psi(), ana_complete(), ana_day1(), ana_multi(), anaideal_complete(), anatut_psi2s(), PndTripleAnaTask::DsDs2317Analysis(), PndPmtTask::Exec(), PndProdAnaTask::Exec(), PndLLbarAnaTask::Exec(), PndAnaWithTrigger::Exec(), PndMyAnalysisTask::Exec(), PndScrutAnaTask::Exec(), PndSimpleCombinerTask::Exec(), PndTripleAnaTask::JpsiAnalysis(), newana_check_eta(), poormantracks(), PndRhoTupleQA::qaFitter(), run_ana_eta_c_stt(), run_ana_eta_c_stt_v2(), run_ana_eta_c_tpc(), PndTripleAnaTask::ThreePiAnalysis(), tut_ana(), tut_ana_fast(), tut_ana_fit(), tut_ana_ntp(), tut_ana_ntp_noqa(), and tut_ana_ntp_qa().
|
inlineinherited |
|
inlineinherited |
Definition at line 49 of file RhoFitterBase.h.
References RhoFitterBase::fNDegreesOfFreedom.
Referenced by poormantracks(), and PndRhoTupleQA::qaFitter().
|
inlineinherited |
Definition at line 50 of file RhoFitterBase.h.
References RhoFitterBase::fChiSquare, and RhoFitterBase::fNDegreesOfFreedom.
Referenced by ana_complete(), ana_day1(), ana_multi(), anaideal_complete(), PndPmtTask::Exec(), PndLLbarAnaTask::Exec(), poormantracks(), PndRhoTupleQA::qaFitter(), tut_ana(), tut_ana_fast(), tut_ana_fit(), tut_ana_ntp(), tut_ana_ntp_noqa(), and tut_ana_ntp_qa().
|
protectedinherited |
Definition at line 427 of file Fitter.cxx.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Definition at line 66 of file RhoFitterBase.h.
References RhoFitterBase::fChi2Map, and RhoCandidate::Uid().
Referenced by RhoKalmanVtxFitter::Calculate().
|
protectedinherited |
Name of a particle in the decay tree.
Definition at line 539 of file Fitter.cxx.
References DecayTreeFitter::ParticleBase::locate(), and DecayTreeFitter::ParticleBase::name().
|
inherited |
|
inlineinherited |
Number of iterations used by vertex fit.
Definition at line 130 of file Fitter.h.
References DecayTreeFitter::Fitter::m_niter.
|
inlineinherited |
The top level particle that is fitted.
Definition at line 116 of file Fitter.h.
References DecayTreeFitter::Fitter::m_particle.
|
inherited |
Print the result of the fit.
Definition at line 307 of file Fitter.cxx.
|
protectedinherited |
Definition at line 371 of file Fitter.cxx.
References DecayTreeFitter::ParticleBase::addToConstraintList(), DecayTreeFitter::ParticleBase::mother(), and DecayTreeFitter::ParticleBase::removeDaughter().
|
protectedinherited |
Definition at line 136 of file RhoFitterBase.cxx.
References RhoCandidate::Daughter(), RhoFitterBase::fDaughters, RhoCandidate::IsComposite(), and RhoCandidate::NDaughters().
Referenced by RhoKinHyperonFitter::Fit(), RhoKinVtxFitter::FitNode(), RhoKinHyperonVtxFitter::FitNode(), and RhoKinHyperonFitter::SetMatrices().
|
protectedinherited |
Definition at line 178 of file RhoFitterBase.cxx.
References RhoCandidate::SetDecayVtx().
Referenced by RhoKalmanVtxFitter::Calculate(), RhoKinVtxFitter::SetOutput(), and RhoKinHyperonVtxFitter::SetOutput().
|
protectedinherited |
Definition at line 160 of file RhoFitterBase.cxx.
References RhoCandidate::Cov7(), RhoCandidate::Daughter(), RhoCandidate::IsComposite(), RhoCandidate::IsLocked(), RhoCandidate::NDaughters(), RhoCandidate::P4(), RhoCandidate::SetCov7(), and RhoCandidate::SetP4().
Referenced by RhoKalmanVtxFitter::Calculate(), Rho4CFitter::Fit(), Rho4CFitter::FitConserveMasses(), RhoKinVtxFitter::SetOutput(), and RhoKinFitter::SetOutput().
|
inherited |
Add or remove a mass constraint.
Definition at line 394 of file Fitter.cxx.
|
inherited |
Add a constraint to a mass different from the property table mass.
Definition at line 400 of file Fitter.cxx.
|
inherited |
set the track extrapolator
Definition at line 154 of file Fitter.cxx.
|
inlineinherited |
Definition at line 161 of file Fitter.h.
References DecayTreeFitter::Fitter::m_extrapolator, and DecayTreeFitter::RecoTrackStateProvider::SetToleranceZ().
|
inlineinherited |
|
inherited |
set the verbosity level (for debugging only)
Definition at line 158 of file Fitter.cxx.
References i, and vtxverbose.
|
inlineinherited |
Status of fit.
Definition at line 128 of file Fitter.h.
References DecayTreeFitter::Fitter::m_status.
|
inherited |
update a particlular candidate in the tree
return an updated decay tree. this is not a final solution. will try to move more info to Particle methods to retrieve the result in terms of RhoCandidates (note: mother vertex is not updated, and decay length cannot be stored anywhere. Use fitParams instead methods to retrieve the result in terms of RhoCandidates (note: mother vertex is not updated, and decay length cannot be stored anywhere. Use fitParams instead
Definition at line 875 of file Fitter.cxx.
References DecayTreeFitter::ParticleBase::locate().
|
protectedinherited |
Definition at line 736 of file Fitter.cxx.
References col, energy, RhoCandidate::GetFit(), DecayTreeFitter::ParticleBase::hasEnergy(), i, RhoFactory::Instance(), DecayTreeFitter::ParticleBase::lenIndex(), DecayTreeFitter::ParticleBase::momIndex(), DecayTreeFitter::ParticleBase::mother(), RhoFactory::NewCandidate(), DecayTreeFitter::ParticleBase::pdtMass(), pos, DecayTreeFitter::ParticleBase::posIndex(), RhoCandidate::RemoveAssociations(), row, RhoCandidate::SetCov7(), RhoCandidate::SetFit(), RhoCandidate::SetP4(), RhoCandidate::SetPos(), and sqrt().
|
protectedinherited |
Definition at line 418 of file Fitter.cxx.
References offset().
|
inherited |
update a particlular candidate in the tree
Definition at line 894 of file Fitter.cxx.
References RhoCandidate::Daughter(), and RhoCandidate::NDaughters().
Referenced by DecayTreeFitter::Fitter::Fit().
|
protectedinherited |
Definition at line 74 of file RhoFitterBase.h.
Referenced by RhoKalmanVtxFitter::Calculate(), DecayTreeFitter::Fitter::chiSquare(), RhoKinVtxFitter::Compute(), RhoKinHyperonVtxFitter::Compute(), Rho4CFitter::Do4CFit(), Rho4CFitter::Do4CFitWithMassConservation(), RhoKalmanVtxFitter::FitNode(), RhoKalmanVtxFitter::FitVertexFast(), RhoFitterBase::GetChi2(), RhoFitterBase::GetProb(), Rho4CFitter::Rho4CFitter(), RhoKinFitter::Solve(), and RhoKinHyperonFitter::Solve().
|
protectedinherited |
Definition at line 69 of file RhoFitterBase.h.
Referenced by RhoKinVtxFitter::Compute(), RhoKinHyperonVtxFitter::Compute(), Rho4CFitter::Do4CFit(), Rho4CFitter::Do4CFitWithMassConservation(), RhoFitterBase::FindAndAddFinalStateDaughters(), Rho4CFitter::Fit(), RhoKinFitter::Fit(), RhoKinHyperonFitter::Fit(), Rho4CFitter::FitConserveMasses(), RhoKinVtxFitter::GetCovariance(), RhoKinHyperonVtxFitter::GetCovariance(), RhoKinFitter::Read4MomKinMatrix(), RhoKinHyperonFitter::Read4MomKinMatrix(), RhoKinVtxFitter::ReadKinMatrix(), RhoKinHyperonVtxFitter::ReadKinMatrix(), RhoKinVtxFitter::ReadMassKinMatrix(), RhoKinFitter::ReadMassKinMatrix(), RhoKinHyperonVtxFitter::ReadMassKinMatrix(), RhoKinVtxFitter::ReadMatrix(), RhoKinFitter::ReadMatrix(), RhoKinHyperonVtxFitter::ReadMatrix(), RhoKinFitter::ReadMomKinMatrix(), RhoKinHyperonFitter::ReadMomKinMatrix(), RhoKinFitter::ReadTotEKinMatrix(), RhoKinHyperonFitter::ReadTotEKinMatrix(), RhoKinFitter::ReadTotMomKinMatrix(), RhoKinHyperonFitter::ReadTotMomKinMatrix(), RhoFitterBase::SetDaugthersFromComposite(), RhoKinVtxFitter::SetMatrices(), RhoKinFitter::SetMatrices(), RhoKinHyperonFitter::SetMatrices(), RhoKinHyperonVtxFitter::SetMatrices(), RhoKinVtxFitter::SetOutput(), RhoKinFitter::SetOutput(), RhoKinHyperonFitter::SetOutput(), RhoKinHyperonVtxFitter::SetOutput(), RhoKinHyperonVtxFitter::TransportToPoca(), RhoKinVtxFitter::TransportToVertex(), and RhoKinHyperonVtxFitter::TransportToVertex().
|
protectedinherited |
Definition at line 62 of file RhoFitterBase.h.
Referenced by Rho4CFitter::Fit(), RhoKinFitter::Fit(), RhoKinHyperonFitter::Fit(), RhoFitterBase::Fit(), RhoFitterBase::FitAll(), Rho4CFitter::FitConserveMasses(), RhoFitterBase::HeadOfTree(), RhoKinHyperonFitter::ReadMatrix(), RhoFitterBase::RhoFitterBase(), RhoKalmanVtxFitter::RhoKalmanVtxFitter(), RhoKinHyperonFitter::SetMatrices(), RhoKinFitter::SetOutput(), and RhoKinHyperonFitter::SetOutput().
|
protectedinherited |
Definition at line 75 of file RhoFitterBase.h.
Referenced by RhoKalmanVtxFitter::Calculate(), RhoKinVtxFitter::Compute(), RhoKinHyperonVtxFitter::Compute(), Rho4CFitter::Do4CFit(), Rho4CFitter::Do4CFitWithMassConservation(), RhoKalmanVtxFitter::FitVertexFast(), RhoFitterBase::GetNdf(), RhoFitterBase::GetProb(), RhoKinFitter::SetOutput(), and RhoKinHyperonFitter::SetOutput().
|
protectedinherited |
Definition at line 58 of file RhoFitterBase.h.
Referenced by RhoKalmanVtxFitter::Calculate(), RhoKinVtxFitter::Compute(), RhoKinHyperonVtxFitter::Compute(), RhoKalmanVtxFitter::FitVertexFast(), RhoKalmanVtxFitter::RhoKalmanVtxFitter(), RhoKalmanVtxFitter::SetDebug(), RhoKinVtxFitter::SetOutput(), RhoKinHyperonVtxFitter::SetOutput(), RhoKalmanVtxFitter::SetSilent(), and RhoFitterBase::SetVerbose().
|
protectedinherited |
track extrapolator (if needed)
Definition at line 235 of file Fitter.h.
Referenced by DecayTreeFitter::Fitter::extrapolator(), and DecayTreeFitter::Fitter::SetToleranceZ().