Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DKinFitUtils Class Referenceabstract

#include <DKinFitUtils.h>

+ Inheritance diagram for DKinFitUtils:

Classes

class  DSpacetimeParticles
 

Public Member Functions

 DKinFitUtils (void)
 
virtual ~DKinFitUtils (void)
 
virtual void Reset_NewEvent (void)
 
virtual void Reset_NewFit (void)
 
bool Get_LinkVerticesFlag (void) const
 
bool Get_DebugLevel (void) const
 
bool Get_UpdateCovarianceMatricesFlag (void) const
 
void Set_LinkVerticesFlag (bool locLinkVerticesFlag)
 
void Set_DebugLevel (int locDebugLevel)
 
void Set_UpdateCovarianceMatricesFlag (bool locUpdateCovarianceMatricesFlag)
 
shared_ptr< DKinFitParticleGet_InputKinFitParticle (const shared_ptr< DKinFitParticle > &locKinFitParticle) const
 
shared_ptr< DKinFitParticleMake_BeamParticle (int locPID, int locCharge, double locMass, TLorentzVector locSpacetimeVertex, TVector3 locMomentum, const shared_ptr< const TMatrixFSym > &locCovarianceMatrix)
 
shared_ptr< DKinFitParticleMake_TargetParticle (int locPID, int locCharge, double locMass)
 
shared_ptr< DKinFitParticleMake_DetectedParticle (int locPID, int locCharge, double locMass, TLorentzVector locSpacetimeVertex, TVector3 locMomentum, double locPathLength, const shared_ptr< const TMatrixFSym > &locCovarianceMatrix)
 
shared_ptr< DKinFitParticleMake_DetectedShower (int locPID, double locMass, TLorentzVector locSpacetimeVertex, double locShowerEnergy, const shared_ptr< const TMatrixFSym > &locCovarianceMatrix)
 
shared_ptr< DKinFitParticleMake_MissingParticle (int locPID, int locCharge, double locMass)
 
shared_ptr< DKinFitParticleMake_DecayingParticle (int locPID, int locCharge, double locMass, const set< shared_ptr< DKinFitParticle >> &locFromInitialState, const set< shared_ptr< DKinFitParticle >> &locFromFinalState)
 
shared_ptr
< DKinFitConstraint_Mass
Make_MassConstraint (const shared_ptr< DKinFitParticle > &locDecayingParticle)
 
shared_ptr< DKinFitConstraint_P4Make_P4Constraint (const set< shared_ptr< DKinFitParticle >> &locInitialParticles, const set< shared_ptr< DKinFitParticle >> &locFinalParticles)
 
shared_ptr
< DKinFitConstraint_Vertex
Make_VertexConstraint (const set< shared_ptr< DKinFitParticle >> &locFullConstrainParticles, const set< shared_ptr< DKinFitParticle >> &locNoConstrainParticles, TVector3 locVertexGuess=TVector3())
 
shared_ptr
< DKinFitConstraint_Spacetime
Make_SpacetimeConstraint (const set< shared_ptr< DKinFitParticle >> &locFullConstrainParticles, const set< shared_ptr< DKinFitParticle >> &locOnlyConstrainTimeParticles, const set< shared_ptr< DKinFitParticle >> &locNoConstrainParticles, TLorentzVector locSpacetimeGuess=TLorentzVector())
 
virtual bool Validate_Constraints (const set< shared_ptr< DKinFitConstraint >> &locKinFitConstraints) const
 
TLorentzVector Calc_DecayingP4_ByPosition (const DKinFitParticle *locKinFitParticle, bool locAtPositionFlag, bool locDontPropagateAtAllFlag=false) const
 
TLorentzVector Calc_DecayingP4_ByP3Derived (const DKinFitParticle *locKinFitParticle, bool locAtP3DerivedFlag, bool locDontPropagateAtAllFlag=false) const
 
TLorentzVector Calc_DecayingP4_ByVertex (const DKinFitParticle *locKinFitParticle, bool locAtProductionVertexFlag, bool locDontPropagateAtAllFlag=false) const
 
bool Propagate_TrackInfoToCommonVertex (const DKinFitParticle *locKinFitParticle, const TMatrixDSym *locVXi, TVector3 &locMomentum, TLorentzVector &locSpacetimeVertex, pair< double, double > &locPathLengthPair, pair< double, double > &locRestFrameLifetimePair, TMatrixFSym *locCovarianceMatrix) const
 
shared_ptr< const DKinFitChainBuild_OutputKinFitChain (const shared_ptr< const DKinFitChain > &locInputKinFitChain, set< shared_ptr< DKinFitParticle >> &locKinFitOutputParticles)
 

Protected Member Functions

void Print_Matrix (const TMatrixD &locMatrix) const
 
void Print_Matrix (const TMatrixF &locMatrix) const
 
virtual bool Get_IncludeBeamlineInVertexFitFlag (void) const =0
 
virtual TVector3 Get_BField (const TVector3 &locPosition) const =0
 
virtual bool Get_IsBFieldNearBeamline (void) const =0
 
shared_ptr< TMatrixFSym > Get_SymMatrixResource (unsigned int locNumMatrixRows)
 
shared_ptr< DKinFitConstraint_P4Clone_KinFitConstraint_P4 (const DKinFitConstraint_P4 *locConstraint)
 
shared_ptr
< DKinFitConstraint_Mass
Clone_KinFitConstraint_Mass (const DKinFitConstraint_Mass *locConstraint)
 
shared_ptr
< DKinFitConstraint_Vertex
Clone_KinFitConstraint_Vertex (const DKinFitConstraint_Vertex *locConstraint)
 
shared_ptr
< DKinFitConstraint_Spacetime
Clone_KinFitConstraint_Spacetime (const DKinFitConstraint_Spacetime *locConstraint)
 
shared_ptr< TMatrixFSym > Clone_SymMatrix (const TMatrixFSym *locMatrix)
 
void Recycle_LastFitMemory (set< shared_ptr< DKinFitConstraint >> &locKinFitConstraints)
 
bool Get_IsDecayingParticleDefinedByProducts (const DKinFitParticle *locKinFitParticle) const
 

Protected Attributes

DKinFitterdKinFitter
 
bool dLinkVerticesFlag
 
int dDebugLevel
 
bool dUpdateCovarianceMatricesFlag
 
shared_ptr< DResourcePool
< DKinFitChainStep > > 
dResourcePool_KinFitChainStep
 
shared_ptr< DResourcePool
< DKinFitChain > > 
dResourcePool_KinFitChain
 

Private Member Functions

shared_ptr< DKinFitParticleClone_KinFitParticle (const shared_ptr< DKinFitParticle > &locKinFitParticle)
 
set< shared_ptr
< DKinFitParticle > > 
Build_CloneParticleSet (const set< shared_ptr< DKinFitParticle >> &locInputParticles, const map< shared_ptr< DKinFitParticle >, shared_ptr< DKinFitParticle >> &locCloneIOMap) const
 
set< shared_ptr
< DKinFitConstraint > > 
Clone_ParticlesAndConstraints (const set< shared_ptr< DKinFitConstraint >> &locInputConstraints)
 
TLorentzVector Calc_DecayingP4 (const DKinFitParticle *locKinFitParticle, bool locIsConstrainedParticle, double locStateSignMultiplier, bool locDontPropagateAtAllFlag=false) const
 
bool Calc_PathLength (const DKinFitParticle *locKinFitParticle, const TMatrixDSym *locVXi, const TMatrixFSym *locCovarianceMatrix, pair< double, double > &locPathLengthPair, pair< double, double > &locRestFrameLifetimePair) const
 
void Calc_DecayingParticleJacobian (const DKinFitParticle *locKinFitParticle, bool locDontPropagateDecayingP3Flag, double locStateSignMultiplier, int locNumEta, const map< const DKinFitParticle *, int > &locAdditionalPxParamIndices, TMatrixD &locJacobian) const
 

Private Attributes

map< shared_ptr
< DKinFitParticle >
, shared_ptr< DKinFitParticle > > 
dParticleMap_OutputToInput
 
map< shared_ptr
< DKinFitParticle >
, shared_ptr
< DKinFitConstraint_Mass > > 
dMassConstraintMap
 
map< pair< set< shared_ptr
< DKinFitParticle > >, set
< shared_ptr< DKinFitParticle >
> >, shared_ptr
< DKinFitConstraint_P4 > > 
dP4ConstraintMap
 
map< pair< set< shared_ptr
< DKinFitParticle > >, set
< shared_ptr< DKinFitParticle >
> >, shared_ptr
< DKinFitConstraint_Vertex > > 
dVertexConstraintMap
 
map< DSpacetimeParticles,
shared_ptr
< DKinFitConstraint_Spacetime > > 
dSpacetimeConstraintMap
 
shared_ptr< DResourcePool
< DKinFitConstraint_Mass > > 
dResourcePool_MassConstraint
 
shared_ptr< DResourcePool
< DKinFitConstraint_P4 > > 
dResourcePool_P4Constraint
 
shared_ptr< DResourcePool
< DKinFitConstraint_Vertex > > 
dResourcePool_VertexConstraint
 
shared_ptr< DResourcePool
< DKinFitConstraint_Spacetime > > 
dResourcePool_SpacetimeConstraint
 
shared_ptr< DResourcePool
< TMatrixFSym > > 
dResourcePool_TMatrixFSym
 
shared_ptr< DResourcePool
< DKinFitParticle > > 
dResourcePool_KinFitParticle
 

Friends

class DKinFitter
 

Detailed Description

Definition at line 26 of file DKinFitUtils.h.

Constructor & Destructor Documentation

virtual DKinFitUtils::~DKinFitUtils ( void  )
inlinevirtual

Definition at line 36 of file DKinFitUtils.h.

Member Function Documentation

set< shared_ptr< DKinFitParticle > > DKinFitUtils::Build_CloneParticleSet ( const set< shared_ptr< DKinFitParticle >> &  locInputParticles,
const map< shared_ptr< DKinFitParticle >, shared_ptr< DKinFitParticle >> &  locCloneIOMap 
) const
private

Definition at line 326 of file DKinFitUtils.cc.

Referenced by Clone_ParticlesAndConstraints().

shared_ptr< const DKinFitChain > DKinFitUtils::Build_OutputKinFitChain ( const shared_ptr< const DKinFitChain > &  locInputKinFitChain,
set< shared_ptr< DKinFitParticle >> &  locKinFitOutputParticles 
)
TLorentzVector DKinFitUtils::Calc_DecayingP4_ByP3Derived ( const DKinFitParticle locKinFitParticle,
bool  locAtP3DerivedFlag,
bool  locDontPropagateAtAllFlag = false 
) const
TLorentzVector DKinFitUtils::Calc_DecayingP4_ByPosition ( const DKinFitParticle locKinFitParticle,
bool  locAtPositionFlag,
bool  locDontPropagateAtAllFlag = false 
) const
TLorentzVector DKinFitUtils::Calc_DecayingP4_ByVertex ( const DKinFitParticle locKinFitParticle,
bool  locAtProductionVertexFlag,
bool  locDontPropagateAtAllFlag = false 
) const
shared_ptr< DKinFitConstraint_Mass > DKinFitUtils::Clone_KinFitConstraint_Mass ( const DKinFitConstraint_Mass locConstraint)
protected

Definition at line 302 of file DKinFitUtils.cc.

References dResourcePool_MassConstraint.

Referenced by Clone_ParticlesAndConstraints().

shared_ptr< DKinFitConstraint_P4 > DKinFitUtils::Clone_KinFitConstraint_P4 ( const DKinFitConstraint_P4 locConstraint)
protected

Definition at line 294 of file DKinFitUtils.cc.

References dResourcePool_P4Constraint.

Referenced by Clone_ParticlesAndConstraints().

shared_ptr< DKinFitConstraint_Spacetime > DKinFitUtils::Clone_KinFitConstraint_Spacetime ( const DKinFitConstraint_Spacetime locConstraint)
protected

Definition at line 318 of file DKinFitUtils.cc.

References dResourcePool_SpacetimeConstraint.

Referenced by Clone_ParticlesAndConstraints().

shared_ptr< DKinFitConstraint_Vertex > DKinFitUtils::Clone_KinFitConstraint_Vertex ( const DKinFitConstraint_Vertex locConstraint)
protected

Definition at line 310 of file DKinFitUtils.cc.

References dResourcePool_VertexConstraint.

Referenced by Clone_ParticlesAndConstraints().

shared_ptr< DKinFitParticle > DKinFitUtils::Clone_KinFitParticle ( const shared_ptr< DKinFitParticle > &  locKinFitParticle)
private
set< shared_ptr< DKinFitConstraint > > DKinFitUtils::Clone_ParticlesAndConstraints ( const set< shared_ptr< DKinFitConstraint >> &  locInputConstraints)
private
shared_ptr< TMatrixFSym > DKinFitUtils::Clone_SymMatrix ( const TMatrixFSym *  locMatrix)
protected

Definition at line 267 of file DKinFitUtils.cc.

References Get_SymMatrixResource().

Referenced by Clone_KinFitParticle().

bool DKinFitUtils::Get_DebugLevel ( void  ) const
inline

Definition at line 46 of file DKinFitUtils.h.

References DKinFitter::dDebugLevel.

virtual bool DKinFitUtils::Get_IncludeBeamlineInVertexFitFlag ( void  ) const
protectedpure virtual

Implemented in DKinFitUtils_GlueX.

shared_ptr< DKinFitParticle > DKinFitUtils::Get_InputKinFitParticle ( const shared_ptr< DKinFitParticle > &  locKinFitParticle) const
inline
bool DKinFitUtils::Get_LinkVerticesFlag ( void  ) const
inline

Definition at line 45 of file DKinFitUtils.h.

shared_ptr< TMatrixFSym > DKinFitUtils::Get_SymMatrixResource ( unsigned int  locNumMatrixRows)
protected
bool DKinFitUtils::Get_UpdateCovarianceMatricesFlag ( void  ) const
inline

Definition at line 47 of file DKinFitUtils.h.

Referenced by DKinFitter::Set_FinalTrackInfo().

shared_ptr< DKinFitParticle > DKinFitUtils::Make_BeamParticle ( int  locPID,
int  locCharge,
double  locMass,
TLorentzVector  locSpacetimeVertex,
TVector3  locMomentum,
const shared_ptr< const TMatrixFSym > &  locCovarianceMatrix 
)
shared_ptr< DKinFitParticle > DKinFitUtils::Make_DecayingParticle ( int  locPID,
int  locCharge,
double  locMass,
const set< shared_ptr< DKinFitParticle >> &  locFromInitialState,
const set< shared_ptr< DKinFitParticle >> &  locFromFinalState 
)
shared_ptr< DKinFitParticle > DKinFitUtils::Make_DetectedParticle ( int  locPID,
int  locCharge,
double  locMass,
TLorentzVector  locSpacetimeVertex,
TVector3  locMomentum,
double  locPathLength,
const shared_ptr< const TMatrixFSym > &  locCovarianceMatrix 
)
shared_ptr< DKinFitParticle > DKinFitUtils::Make_DetectedShower ( int  locPID,
double  locMass,
TLorentzVector  locSpacetimeVertex,
double  locShowerEnergy,
const shared_ptr< const TMatrixFSym > &  locCovarianceMatrix 
)
shared_ptr< DKinFitConstraint_Mass > DKinFitUtils::Make_MassConstraint ( const shared_ptr< DKinFitParticle > &  locDecayingParticle)
shared_ptr< DKinFitParticle > DKinFitUtils::Make_MissingParticle ( int  locPID,
int  locCharge,
double  locMass 
)
shared_ptr< DKinFitConstraint_P4 > DKinFitUtils::Make_P4Constraint ( const set< shared_ptr< DKinFitParticle >> &  locInitialParticles,
const set< shared_ptr< DKinFitParticle >> &  locFinalParticles 
)
shared_ptr< DKinFitConstraint_Spacetime > DKinFitUtils::Make_SpacetimeConstraint ( const set< shared_ptr< DKinFitParticle >> &  locFullConstrainParticles,
const set< shared_ptr< DKinFitParticle >> &  locOnlyConstrainTimeParticles,
const set< shared_ptr< DKinFitParticle >> &  locNoConstrainParticles,
TLorentzVector  locSpacetimeGuess = TLorentzVector() 
)
shared_ptr< DKinFitParticle > DKinFitUtils::Make_TargetParticle ( int  locPID,
int  locCharge,
double  locMass 
)
shared_ptr< DKinFitConstraint_Vertex > DKinFitUtils::Make_VertexConstraint ( const set< shared_ptr< DKinFitParticle >> &  locFullConstrainParticles,
const set< shared_ptr< DKinFitParticle >> &  locNoConstrainParticles,
TVector3  locVertexGuess = TVector3() 
)
void DKinFitUtils::Print_Matrix ( const TMatrixF &  locMatrix) const
protected

Definition at line 1321 of file DKinFitUtils.cc.

void DKinFitUtils::Recycle_LastFitMemory ( set< shared_ptr< DKinFitConstraint >> &  locKinFitConstraints)
protected

Definition at line 430 of file DKinFitUtils.cc.

References dParticleMap_OutputToInput.

Referenced by DKinFitter::Recycle_LastFitMemory().

void DKinFitUtils::Reset_NewEvent ( void  )
virtual
virtual void DKinFitUtils::Reset_NewFit ( void  )
inlinevirtual

Definition at line 40 of file DKinFitUtils.h.

Referenced by Reset_NewEvent(), and DKinFitter::Reset_NewFit().

void DKinFitUtils::Set_DebugLevel ( int  locDebugLevel)
inline

Definition at line 51 of file DKinFitUtils.h.

References DKinFitter::dDebugLevel.

Referenced by DKinFitter::Set_DebugLevel().

void DKinFitUtils::Set_LinkVerticesFlag ( bool  locLinkVerticesFlag)
inline

Definition at line 50 of file DKinFitUtils.h.

void DKinFitUtils::Set_UpdateCovarianceMatricesFlag ( bool  locUpdateCovarianceMatricesFlag)
inline
bool DKinFitUtils::Validate_Constraints ( const set< shared_ptr< DKinFitConstraint >> &  locKinFitConstraints) const
virtual

Definition at line 459 of file DKinFitUtils.cc.

Referenced by DKinFitter::Fit_Reaction().

Friends And Related Function Documentation

friend class DKinFitter
friend

Definition at line 28 of file DKinFitUtils.h.

Member Data Documentation

DKinFitter* DKinFitUtils::dKinFitter
protected

Definition at line 139 of file DKinFitUtils.h.

Referenced by DKinFitter::DKinFitter(), and DKinFitUtils().

bool DKinFitUtils::dLinkVerticesFlag
protected

Definition at line 140 of file DKinFitUtils.h.

Referenced by DKinFitUtils(), and DKinFitUtils_GlueX::DKinFitUtils_GlueX().

map<shared_ptr<DKinFitParticle>, shared_ptr<DKinFitConstraint_Mass> > DKinFitUtils::dMassConstraintMap
private

Definition at line 187 of file DKinFitUtils.h.

Referenced by Make_MassConstraint(), and Reset_NewEvent().

map<pair<set<shared_ptr<DKinFitParticle> >, set<shared_ptr<DKinFitParticle> > >, shared_ptr<DKinFitConstraint_P4> > DKinFitUtils::dP4ConstraintMap
private

Definition at line 188 of file DKinFitUtils.h.

Referenced by Make_P4Constraint(), and Reset_NewEvent().

map<shared_ptr<DKinFitParticle>, shared_ptr<DKinFitParticle> > DKinFitUtils::dParticleMap_OutputToInput
private
shared_ptr<DResourcePool<DKinFitChain> > DKinFitUtils::dResourcePool_KinFitChain
protected
shared_ptr<DResourcePool<DKinFitChainStep> > DKinFitUtils::dResourcePool_KinFitChainStep
protected
shared_ptr<DResourcePool<DKinFitConstraint_Mass> > DKinFitUtils::dResourcePool_MassConstraint
private

Definition at line 194 of file DKinFitUtils.h.

Referenced by Clone_KinFitConstraint_Mass(), DKinFitUtils(), and Make_MassConstraint().

shared_ptr<DResourcePool<DKinFitConstraint_P4> > DKinFitUtils::dResourcePool_P4Constraint
private

Definition at line 195 of file DKinFitUtils.h.

Referenced by Clone_KinFitConstraint_P4(), DKinFitUtils(), and Make_P4Constraint().

shared_ptr<DResourcePool<DKinFitConstraint_Spacetime> > DKinFitUtils::dResourcePool_SpacetimeConstraint
private
shared_ptr<DResourcePool<TMatrixFSym> > DKinFitUtils::dResourcePool_TMatrixFSym
private

Definition at line 199 of file DKinFitUtils.h.

Referenced by DKinFitUtils(), and Get_SymMatrixResource().

shared_ptr<DResourcePool<DKinFitConstraint_Vertex> > DKinFitUtils::dResourcePool_VertexConstraint
private
map<DSpacetimeParticles, shared_ptr<DKinFitConstraint_Spacetime> > DKinFitUtils::dSpacetimeConstraintMap
private

Definition at line 190 of file DKinFitUtils.h.

Referenced by Make_SpacetimeConstraint(), and Reset_NewEvent().

bool DKinFitUtils::dUpdateCovarianceMatricesFlag
protected
map<pair<set<shared_ptr<DKinFitParticle> >, set<shared_ptr<DKinFitParticle> > >, shared_ptr<DKinFitConstraint_Vertex> > DKinFitUtils::dVertexConstraintMap
private

Definition at line 189 of file DKinFitUtils.h.

Referenced by Make_VertexConstraint(), and Reset_NewEvent().


The documentation for this class was generated from the following files: