Class AliMUONTrack Reconstructed track in ALICE dimuon spectrometer
AliMUONTrack() | |
AliMUONTrack(const AliMUONTrack& track) | |
AliMUONTrack(AliMUONObjectPair* segment, Double_t bendingVertexDispersion) | |
virtual | ~AliMUONTrack() |
void | TObject::AbstractMethod(const char* method) const |
void | AddTrackParamAtCluster(const AliMUONTrackParam& trackParam, AliMUONVCluster& cluster, Bool_t copy = kFALSE) |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | TObject::Browse(TBrowser* b) |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
virtual void | Clear(Option_t* opt = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
Int_t | ClustersInCommon(AliMUONTrack* track, Int_t stMin = 0, Int_t stMax = 4) const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
Bool_t | ComputeClusterWeights(TMatrixD* mcsCovariances = 0) |
Double_t | ComputeGlobalChi2(Bool_t accountForMCS) |
Bool_t | ComputeLocalChi2(Bool_t accountForMCS) |
void | Connected(Bool_t flag = kTRUE) |
virtual void | TObject::Copy(TObject& object) const |
virtual void | TObject::Delete(Option_t* option = "")MENU |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
virtual void | TObject::Dump() constMENU |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
Int_t | FindCompatibleClusters(const AliMUONTrack& track, Double_t sigma2Cut, Bool_t* compatibleCluster) const |
void | FindMCLabel() |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
Bool_t | FitWithMCS() const |
void | FitWithMCS(Bool_t fitWithMCS) |
Bool_t | FitWithVertex() const |
void | FitWithVertex(Bool_t fitWithVertex) |
Double_t | GetChi2MatchTrigger() const |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
Double_t | GetGlobalChi2() const |
UShort_t | GetHitsPatternInTrigCh() const |
UInt_t | GetHitsPatternInTrigChTrk() const |
virtual const char* | TObject::GetIconName() const |
Int_t | GetLocalTrigger() const |
Int_t | GetLoTrgNum() const |
Int_t | GetMatchTrigger() const |
Int_t | GetMCLabel() const |
virtual const char* | TObject::GetName() const |
Int_t | GetNClusters() const |
Int_t | GetNDF() const |
Double_t | GetNormalizedChi2() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
virtual const char* | TObject::GetTitle() const |
TObjArray* | GetTrackParamAtCluster() const |
AliMUONTrackParam* | GetTrackParamAtVertex() const |
Int_t | GetTriggerWithoutChamber() const |
virtual UInt_t | TObject::GetUniqueID() const |
void | GetVertexErrXY2(Double_t& nonBendingErr2, Double_t& bendingErr2) const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TObject::Hash() const |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
virtual void | TObject::Inspect() constMENU |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
Bool_t | IsConnected() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | IsImproved() const |
Bool_t | TObject::IsOnHeap() const |
virtual Bool_t | TObject::IsSortable() const |
Bool_t | IsValid(UInt_t requestedStationMask, Bool_t request2ChInSameSt45 = kFALSE) |
Bool_t | TObject::IsZombie() const |
Int_t | LoCircuit() const |
Int_t | LoDev() const |
Int_t | LoHpt() const |
Int_t | LoLpt() const |
Int_t | LoStripX() const |
Int_t | LoStripY() const |
virtual void | TObject::ls(Option_t* option = "") const |
Bool_t | Match(AliMUONTrack& track, Double_t sigma2Cut, Int_t& nMatchClusters) const |
static Double_t | MaxChi2() |
void | TObject::MayNotUse(const char* method) const |
virtual Bool_t | TObject::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static void | TObject::operator delete[](void* ptr, void* vp) |
void* | TObject::operator new(size_t sz) |
void* | TObject::operator new(size_t sz, void* vp) |
void* | TObject::operator new[](size_t sz) |
void* | TObject::operator new[](size_t sz, void* vp) |
AliMUONTrack& | operator=(const AliMUONTrack& track) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | Print(Option_t* opt = "") const |
virtual Int_t | TObject::Read(const char* name) |
void | RecursiveDump() const |
virtual void | TObject::RecursiveRemove(TObject* obj) |
void | RemoveTrackParamAtCluster(AliMUONTrackParam* trackParam) |
void | Reset() |
void | TObject::ResetBit(UInt_t f) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
void | SetChi2MatchTrigger(Double_t chi2MatchTrigger) |
virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
static void | TObject::SetDtorOnly(void* obj) |
void | SetGlobalChi2(Double_t chi2) |
void | SetHitsPatternInTrigCh(UShort_t hitsPatternInTrigCh) |
void | SetHitsPatternInTrigChTrk(UInt_t hitsPatternInTrigChTrk) |
void | SetImproved(Bool_t improved) |
void | SetLocalTrigger(Int_t loCirc, Int_t loStripX, Int_t loStripY, Int_t loDev, Int_t loLpt, Int_t loHpt, UChar_t respWithoutChamber = 0) |
void | SetMatchTrigger(Int_t matchTrigger) |
void | SetMCLabel(Int_t label) |
static void | TObject::SetObjectStat(Bool_t stat) |
void | SetTrackParamAtVertex(const AliMUONTrackParam* trackParam) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
void | SetVertexErrXY2(Double_t nonBendingErr2, Double_t bendingErr2) |
virtual void | ShowMembers(TMemberInspector&) |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
void | TagRemovableClusters(UInt_t requestedStationMask) |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
Bool_t | TriggerFiredWithoutChamber(Int_t ich) const |
Bool_t | UpdateCovTrackParamAtCluster() |
Bool_t | UpdateTrackParamAtCluster() |
virtual void | TObject::UseCurrentStyle() |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
void | TObject::MakeZombie() |
Bool_t | ComputeClusterWeights(TMatrixD& clusterWeightsNB, TMatrixD& clusterWeightsB, TMatrixD* mcsCovariances = 0, const AliMUONVCluster* discardedCluster = 0) const |
void | ComputeMCSCovariances(TMatrixD& mcsCovariances) const |
enum TObject::EStatusBits { | kCanDelete | |
kMustCleanup | ||
kObjInCanvas | ||
kIsReferenced | ||
kHasUUID | ||
kCannotPick | ||
kNoContextMenu | ||
kInvalidObject | ||
}; | ||
enum TObject::[unnamed] { | kIsOnHeap | |
kNotDeleted | ||
kZombie | ||
kBitMask | ||
kSingleKey | ||
kOverwrite | ||
kWriteDelete | ||
}; |
Double_t | fChi2MatchTrigger | /< chi2 of trigger/track matching |
TMatrixD* | fClusterWeightsBending | !< weights matrix, in bending direction, of clusters attached to the track |
TMatrixD* | fClusterWeightsNonBending | !< weights matrix, in non bending direction, of clusters attached to the track |
Bool_t | fConnected | /< kTRUE if that track shares cluster(s) with another |
Bool_t | fFitWithMCS | !< kTRUE if accounting for multiple scattering in the fit, kFALSE if not |
Bool_t | fFitWithVertex | !< kTRUE if using the vertex to constrain the fit, kFALSE if not |
Double_t | fGlobalChi2 | /< Global chi2 of the track |
UShort_t | fHitsPatternInTrigCh | /< Word containing info on the hits left in trigger chambers |
UInt_t | fHitsPatternInTrigChTrk | /< Word containing info on the hits left in trigger chambers (calculated from extrapolated tracker track) |
Bool_t | fImproved | !< kTRUE if the track has been improved |
Int_t | fLocalTrigger | /< packed local trigger information |
Int_t | fMatchTrigger | /< 0 track does not match trigger |
Int_t | fTrackID | /< Point to the corresponding MC track |
TObjArray* | fTrackParamAtCluster | /< Track parameters at cluster |
AliMUONTrackParam* | fTrackParamAtVertex | !< Track parameters at vertex |
Double_t | fVertexErrXY2[2] | !< Vertex resolution square used during the tracking procedure if required |
static const Double_t | fgkMaxChi2 | /< maximum chi2 above which the track can be considered as abnormal |
Inheritance Chart: | ||||||||||||
|
Constructor from two clusters
return array of track parameters at cluster (create it if needed)
Remove trackParam from the array of TrackParamAtCluster and delete it since the array is owner
Update track parameters at each attached cluster Return kFALSE in case of failure (i.e. extrapolation problem)
Update track parameters and their covariances at each attached cluster Include effects of multiple scattering in chambers Return kFALSE in case of failure (i.e. extrapolation problem)
check the validity of the current track: at least one cluster per requested station and at least 2 chambers in stations 4 & 5 that contain cluster(s) + if request2ChInSameSt45 = kTRUE: 2 chambers hit in the same station (4 or 5)
Identify clusters that can be removed from the track, with the only requirements to have at least 1 cluster per requested station and at least 2 chambers over 4 in stations 4 & 5 that contain cluster(s)
Compute each cluster contribution to the chi2 of the track accounting for multiple scattering or not according to the flag - Also recompute the weight matrices of the attached clusters if accountForMCS=kTRUE - Assume that track parameters at each cluster are corrects - Return kFALSE if computation failed
Compute the chi2 of the track accounting for multiple scattering or not according to the flag - Assume that track parameters at each cluster are corrects - Assume the cluster weights matrices are corrects - Return a value of chi2 higher than the maximum allowed if computation failed
Compute the weight matrices of the attached clusters, in non bending and bending direction, accounting for multiple scattering correlations and cluster resolution - Use the provided MCS covariance matrix if any (otherwise build it temporarily) - Assume that track parameters at each cluster are corrects - Return kFALSE if computation failed
Compute the weight matrices, in non bending and bending direction, of the other attached clusters assuming the discarded one does not exist accounting for multiple scattering correlations and cluster resolution - Use the provided MCS covariance matrix if any (otherwise build it temporarily) - Return kFALSE if computation failed
Compute the multiple scattering covariance matrix (assume that track parameters at each cluster are corrects)
Returns the number of clusters in common in stations [stMin, stMax] between the current track ("this") and the track pointed to by "track".
return the chi2 value divided by the number of degrees of freedom (or FLT_MAX if ndf <= 0)
Try to match clusters from this track with clusters from the given track within the provided sigma cut: - Fill the array compatibleCluster[iCh] with kTRUE if a compatible cluster has been found in chamber iCh. - Return the number of clusters of "this" track matched with one cluster of the given track.
Try to match this track with the given track. Matching conditions: - more than 50% of clusters from this track matched with clusters from the given track - at least 1 cluster matched before and 1 cluster matched after the dipole
Recursive dump of AliMUONTrack, i.e. with dump of trackParamAtCluster and attached clusters
pack the local trigger information and store
Determine the MC label from the label of the attached clusters and fill fMCLabel data member: More than 50% of clusters, including 1 before and 1 after the dipole, must share the same label
return the number of clusters attached to the track
{return fTrackParamAtCluster ? fTrackParamAtCluster->GetEntriesFast() : 0;}
return kTrue if the vertex must be used to constrain the fit, kFalse if not
{return fFitWithVertex;}
set the flag telling whether the vertex must be used to constrain the fit or not
{ fFitWithVertex = fitWithVertex; }
return the vertex resolution square used during the tracking procedure
{ nonBendingErr2 = fVertexErrXY2[0]; bendingErr2 = fVertexErrXY2[1]; }
set the vertex resolution square used during the tracking procedure
{ fVertexErrXY2[0] = nonBendingErr2; fVertexErrXY2[1] = bendingErr2; }
return kTrue if the multiple scattering must be accounted for in the fit, kFalse if not
{return fFitWithMCS;}
set the flag telling whether the multiple scattering must be accounted for in the fit or not
{fFitWithMCS = fitWithMCS;}
return the minimum value of the function minimized by the fit
{return fGlobalChi2;}
set the minimum value of the function minimized by the fit
{ fGlobalChi2 = chi2;}
set the flag telling whether the track has been improved or not
{ fImproved = improved;}
return 1,2,3 if track matches with trigger track, 0 if not
{return fMatchTrigger;}
returns the local trigger number corresponding to the trigger track (obsolete)
{return LoCircuit();}
set the flag telling whether track matches with trigger track or not
{fMatchTrigger = matchTrigger;}
return the chi2 of trigger/track matching
{return fChi2MatchTrigger;}
set the chi2 of trigger/track matching
{fChi2MatchTrigger = chi2MatchTrigger;}
return pointer to track parameters at vertex (can be 0x0)
{return fTrackParamAtVertex;}
set word telling which trigger chambers where hit by track
{return fHitsPatternInTrigCh;}
set word telling which trigger chambers where hit by track
{fHitsPatternInTrigCh = hitsPatternInTrigCh;}
set word telling which trigger chambers where hit by track (from tracker track extrapolation)
{return fHitsPatternInTrigChTrk;}
set word telling which trigger chambers where hit by track (from tracker track extrapolation)
{fHitsPatternInTrigChTrk = hitsPatternInTrigChTrk;}
return local trigger information for the matched trigger track
{ return fLocalTrigger; }
Word stating if trigger would be fired without one chamber
{ return fLocalTrigger >> 26 & 0xF; }
Check if trigger would be fired without chamber (ich [0,3])
{ return GetTriggerWithoutChamber() >> (3 - ich) & 0x1; }
return the maximum chi2 above which the track can be considered as abnormal (due to extrapolation failure, ...)
{return fgkMaxChi2;}
set the flag which is kTRUE if that track shares cluster(s) with another
{fConnected = flag;}
return the flag which is kTRUE if that track shares cluster(s) with another
{return fConnected;}