#include "AliMUONTrackReconstructor.h"
#include "AliMUONConstants.h"
#include "AliMUONVCluster.h"
#include "AliMUONVClusterServer.h"
#include "AliMUONVClusterStore.h"
#include "AliMUONTrack.h"
#include "AliMUONTrackParam.h"
#include "AliMUONTrackExtrap.h"
#include "AliMUONRecoParam.h"
#include "AliMUONGeometryTransformer.h"
#include "AliMpArea.h"
#include "AliLog.h"
#include <TMinuit.h>
#include <Riostream.h>
#include <TMath.h>
#include <TMatrixD.h>
#include <TClonesArray.h>
void TrackChi2(Int_t &nParam, Double_t *gradient, Double_t &chi2, Double_t *param, Int_t flag);
using std::endl;
using std::cout;
ClassImp(AliMUONTrackReconstructor)
AliMUONTrackReconstructor::AliMUONTrackReconstructor(const AliMUONRecoParam* recoParam, AliMUONVClusterServer* clusterServer,
const AliMUONGeometryTransformer* transformer)
: AliMUONVTrackReconstructor(recoParam, clusterServer, transformer)
{
}
AliMUONTrackReconstructor::~AliMUONTrackReconstructor()
{
}
Bool_t AliMUONTrackReconstructor::MakeTrackCandidates(AliMUONVClusterStore& clusterStore)
{
TClonesArray *segments;
AliMUONTrack *track;
Int_t iCandidate = 0;
Bool_t clusterFound;
AliDebug(1,"Enter MakeTrackCandidates");
Int_t firstChamber(0);
Int_t lastChamber(9);
if (GetRecoParam()->CombineClusterTrackReco()) {
firstChamber = 6;
}
for (Int_t i = firstChamber; i <= lastChamber; ++i )
{
if (fClusterServer && GetRecoParam()->UseChamber(i)) fClusterServer->Clusterize(i, clusterStore, AliMpArea(), GetRecoParam());
}
for (Int_t istat=4; istat>=3; istat--) {
segments = MakeSegmentsBetweenChambers(clusterStore, 2*istat, 2*istat+1);
for (Int_t iseg=0; iseg<segments->GetEntriesFast(); iseg++)
{
AliDebug(1,Form("Making primary candidate(1..) %d",++iCandidate));
track = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack((AliMUONObjectPair*)((*segments)[iseg]),GetRecoParam()->GetBendingVertexDispersion());
fNRecTracks++;
if (GetRecoParam()->MakeTrackCandidatesFast())
clusterFound = FollowLinearTrackInStation(*track, clusterStore, 7-istat);
else clusterFound = FollowTrackInStation(*track, clusterStore, 7-istat);
if (GetRecoParam()->RequestStation(7-istat)) {
if (!clusterFound) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
} else if (fNRecTracks > GetRecoParam()->GetMaxTrackCandidates()) {
AliError(Form("Too many track candidates (%d tracks). Stop tracking.", fNRecTracks));
return kFALSE;
}
} else {
if ((fNRecTracks + segments->GetEntriesFast() - iseg - 1) > GetRecoParam()->GetMaxTrackCandidates()) {
AliError(Form("Too many track candidates (%d tracks). Stop tracking.", fNRecTracks + segments->GetEntriesFast() - iseg - 1));
return kFALSE;
}
}
}
}
if (GetRecoParam()->TrackAllTracks()) RemoveIdenticalTracks();
else RemoveDoubleTracks();
AliDebug(1,Form("Number of good candidates = %d",fNRecTracks));
return kTRUE;
}
Bool_t AliMUONTrackReconstructor::MakeMoreTrackCandidates(AliMUONVClusterStore& clusterStore)
{
TClonesArray *segments;
AliMUONObjectPair *segment;
AliMUONTrack *track;
Int_t iCandidate = 0, iCurrentTrack, nCurrentTracks;
Bool_t clusterFound;
AliDebug(1,"Enter MakeMoreTrackCandidates");
for (Int_t ich1 = 6; ich1 <= 7; ich1++) {
for (Int_t ich2 = 8; ich2 <= 9; ich2++) {
segments = MakeSegmentsBetweenChambers(clusterStore, ich1, ich2);
RemoveUsedSegments(*segments);
for (Int_t iSegment=0; iSegment<segments->GetEntriesFast(); iSegment++)
{
AliDebug(1,Form("Making primary candidate(1..) %d",++iCandidate));
segment = (AliMUONObjectPair*) segments->UncheckedAt(iSegment);
iCurrentTrack = fRecTracksPtr->GetLast()+1;
track = new ((*fRecTracksPtr)[iCurrentTrack]) AliMUONTrack(segment,GetRecoParam()->GetBendingVertexDispersion());
fNRecTracks++;
clusterFound = FollowLinearTrackInChamber(*track, clusterStore, 17-ich2);
if (GetRecoParam()->TrackAllTracks() && clusterFound) iCurrentTrack++;
nCurrentTracks = fRecTracksPtr->GetLast()+1;
while (iCurrentTrack < nCurrentTracks) {
track = (AliMUONTrack*) fRecTracksPtr->UncheckedAt(iCurrentTrack);
FollowLinearTrackInChamber(*track, clusterStore, 13-ich1);
iCurrentTrack++;
}
if ((fNRecTracks + segments->GetEntriesFast() - iSegment - 1) > GetRecoParam()->GetMaxTrackCandidates()) {
AliError(Form("Too many track candidates (%d tracks). Stop tracking.", fNRecTracks + segments->GetEntriesFast() - iSegment - 1));
return kFALSE;
}
}
}
}
if (!GetRecoParam()->TrackAllTracks()) RemoveDoubleTracks();
else fRecTracksPtr->Compress();
AliDebug(1,Form("Number of good candidates = %d",fNRecTracks));
return kTRUE;
}
Bool_t AliMUONTrackReconstructor::FollowTracks(AliMUONVClusterStore& clusterStore)
{
AliDebug(1,"Enter FollowTracks");
AliMUONTrack *track, *nextTrack;
AliMUONTrackParam *trackParam, *nextTrackParam;
Int_t currentNRecTracks;
Double_t sigmaCut2 = GetRecoParam()->GetSigmaCutForTracking() *
GetRecoParam()->GetSigmaCutForTracking();
for (Int_t station = 2; station >= 0; station--) {
currentNRecTracks = fNRecTracks;
for (Int_t iRecTrack = 0; iRecTrack <currentNRecTracks; iRecTrack++) {
AliDebug(1,Form("FollowTracks: track candidate(1..) %d", iRecTrack+1));
track = (AliMUONTrack*) fRecTracksPtr->UncheckedAt(iRecTrack);
if (((AliMUONTrackParam*) track->GetTrackParamAtCluster()->First())->GetClusterPtr()->GetChamberId() > 5)
Fit(*track, kFALSE, kTRUE, kTRUE);
else Fit(*track, kFALSE, kFALSE, kTRUE);
if (!IsAcceptable(*((AliMUONTrackParam*)track->GetTrackParamAtCluster()->First()))) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
continue;
}
if (track->GetNormalizedChi2() > sigmaCut2) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
continue;
}
if (GetRecoParam()->ComplementTracks()) {
if (station==2) {
if (!track->UpdateCovTrackParamAtCluster()) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
continue;
}
trackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->First();
while (trackParam) {
trackParam->SetSmoothParameters(trackParam->GetParameters());
trackParam->SetSmoothCovariances(trackParam->GetCovariances());
trackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->After(trackParam);
}
} else {
trackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->First();
if (trackParam->GetClusterPtr()->GetChamberId() < 2*(station+2)) {
trackParam->SetSmoothParameters(trackParam->GetParameters());
trackParam->SetSmoothCovariances(trackParam->GetCovariances());
nextTrackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->After(trackParam);
if (nextTrackParam->GetClusterPtr()->GetChamberId() < 2*(station+2)) {
nextTrackParam->SetParameters(trackParam->GetParameters());
nextTrackParam->SetZ(trackParam->GetZ());
nextTrackParam->SetCovariances(trackParam->GetCovariances());
if (!AliMUONTrackExtrap::ExtrapToZCov(nextTrackParam, nextTrackParam->GetClusterPtr()->GetZ())) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
continue;
}
nextTrackParam->SetSmoothParameters(nextTrackParam->GetParameters());
nextTrackParam->SetSmoothCovariances(nextTrackParam->GetCovariances());
}
}
}
}
if (!FollowTrackInStation(*track, clusterStore, station)) {
if (GetRecoParam()->RecoverTracks()) {
if (!GetRecoParam()->RequestStation(station)) {
track = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack(*track);
fNRecTracks++;
}
if (!RecoverTrack(*track, clusterStore, station)) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
}
} else if (GetRecoParam()->RequestStation(station)) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
}
}
if (fNRecTracks > GetRecoParam()->GetMaxTrackCandidates()) {
AliError(Form("Too many track candidates (%d tracks). Stop tracking.", fNRecTracks));
return kFALSE;
}
}
fRecTracksPtr->Compress();
if (!GetRecoParam()->TrackAllTracks()) RemoveDoubleTracks();
}
Int_t trackIndex = -1;
track = (AliMUONTrack*) fRecTracksPtr->First();
while (track) {
trackIndex++;
nextTrack = (AliMUONTrack*) fRecTracksPtr->After(track);
Fit(*track, kTRUE, kFALSE, kTRUE);
if (AliLog::GetGlobalDebugLevel() >= 3) {
cout << "FollowTracks: track candidate(0..) " << trackIndex << " after final fit" << endl;
track->RecursiveDump();
}
if (track->GetNormalizedChi2() > sigmaCut2) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
track = nextTrack;
continue;
}
if (GetRecoParam()->ComplementTracks()) {
trackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->First();
if (trackParam->GetClusterPtr()->GetChamberId() < 2) {
trackParam->SetSmoothParameters(trackParam->GetParameters());
trackParam->SetSmoothCovariances(trackParam->GetCovariances());
nextTrackParam = (AliMUONTrackParam*) track->GetTrackParamAtCluster()->After(trackParam);
if (nextTrackParam->GetClusterPtr()->GetChamberId() < 2) {
nextTrackParam->SetParameters(trackParam->GetParameters());
nextTrackParam->SetZ(trackParam->GetZ());
nextTrackParam->SetCovariances(trackParam->GetCovariances());
if (!AliMUONTrackExtrap::ExtrapToZCov(nextTrackParam, nextTrackParam->GetClusterPtr()->GetZ())) {
fRecTracksPtr->Remove(track);
fNRecTracks--;
track = nextTrack;
continue;
}
nextTrackParam->SetSmoothParameters(nextTrackParam->GetParameters());
nextTrackParam->SetSmoothCovariances(nextTrackParam->GetCovariances());
}
}
}
track = nextTrack;
}
fRecTracksPtr->Compress();
return kTRUE;
}
Bool_t AliMUONTrackReconstructor::FollowTrackInChamber(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextChamber)
{
AliDebug(1,Form("Enter FollowTrackInChamber(1..) %d", nextChamber+1));
Double_t chi2WithOneCluster = AliMUONTrack::MaxChi2();
Double_t maxChi2WithOneCluster = 2. * GetRecoParam()->GetSigmaCutForTracking() *
GetRecoParam()->GetSigmaCutForTracking();
Double_t bestChi2WithOneCluster = maxChi2WithOneCluster;
Bool_t foundOneCluster = kFALSE;
AliMUONTrack *newTrack = 0x0;
AliMUONVCluster *cluster;
AliMUONTrackParam extrapTrackParam;
AliMUONTrackParam extrapTrackParamAtCh;
AliMUONTrackParam extrapTrackParamAtCluster;
AliMUONTrackParam bestTrackParamAtCluster;
if (nextChamber > 7) extrapTrackParamAtCh = *(AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->Last();
else extrapTrackParamAtCh = *(AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->First();
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
cout<<endl<<"Track parameters and covariances at first cluster:"<<endl;
extrapTrackParamAtCh.GetParameters().Print();
extrapTrackParamAtCh.GetCovariances().Print();
}
Int_t currentChamber = extrapTrackParamAtCh.GetClusterPtr()->GetChamberId();
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCh,AliMUONConstants::ChamberThicknessInX0(currentChamber),-1.);
while (currentChamber > nextChamber + 1) {
currentChamber--;
if (!AliMUONTrackExtrap::ExtrapToZCov(&extrapTrackParamAtCh, AliMUONConstants::DefaultChamberZ(currentChamber))) return kFALSE;
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCh,AliMUONConstants::ChamberThicknessInX0(currentChamber),-1.);
}
if (!AliMUONTrackExtrap::ExtrapToZCov(&extrapTrackParamAtCh, AliMUONConstants::DefaultChamberZ(nextChamber))) return kFALSE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
cout<<endl<<"Track parameters and covariances at first cluster extrapolated to z = "<<AliMUONConstants::DefaultChamberZ(nextChamber)<<":"<<endl;
extrapTrackParamAtCh.GetParameters().Print();
extrapTrackParamAtCh.GetCovariances().Print();
}
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: look for clusters in chamber(1..): " << nextChamber+1 << endl;
}
if (GetRecoParam()->CombineClusterTrackReco()) {
if (nextChamber < 6) AskForNewClustersInChamber(extrapTrackParamAtCh, clusterStore, nextChamber);
}
TIter next(clusterStore.CreateChamberIterator(nextChamber,nextChamber));
while ( ( cluster = static_cast<AliMUONVCluster*>(next()) ) ) {
if (!TryOneClusterFast(extrapTrackParamAtCh, cluster)) continue;
chi2WithOneCluster = TryOneCluster(extrapTrackParamAtCh, cluster, extrapTrackParamAtCluster);
if (chi2WithOneCluster < maxChi2WithOneCluster) {
foundOneCluster = kTRUE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: found one cluster in chamber(1..): " << nextChamber+1
<< " (Chi2 = " << chi2WithOneCluster << ")" << endl;
cluster->Print();
}
if (GetRecoParam()->TrackAllTracks()) {
newTrack = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack(trackCandidate);
UpdateTrack(*newTrack,extrapTrackParamAtCluster);
fNRecTracks++;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added one cluster in chamber(1..): " << nextChamber+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else if (chi2WithOneCluster < bestChi2WithOneCluster) {
bestChi2WithOneCluster = chi2WithOneCluster;
bestTrackParamAtCluster = extrapTrackParamAtCluster;
}
}
}
if (!GetRecoParam()->TrackAllTracks()) {
if (foundOneCluster) {
UpdateTrack(trackCandidate,bestTrackParamAtCluster);
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added the best cluster in chamber(1..): " << bestTrackParamAtCluster.GetClusterPtr()->GetChamberId()+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else return kFALSE;
} else if (foundOneCluster) {
fRecTracksPtr->Remove(&trackCandidate);
fNRecTracks--;
} else return kFALSE;
return kTRUE;
}
Bool_t AliMUONTrackReconstructor::FollowTrackInStation(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextStation)
{
AliDebug(1,Form("Enter FollowTrackInStation(1..) %d", nextStation+1));
Int_t ch1, ch2;
if (nextStation==4) {
ch1 = 2*nextStation+1;
ch2 = 2*nextStation;
} else {
ch1 = 2*nextStation;
ch2 = 2*nextStation+1;
}
Double_t chi2WithOneCluster = AliMUONTrack::MaxChi2();
Double_t chi2WithTwoClusters = AliMUONTrack::MaxChi2();
Double_t maxChi2WithOneCluster = 2. * GetRecoParam()->GetSigmaCutForTracking() *
GetRecoParam()->GetSigmaCutForTracking();
Double_t maxChi2WithTwoClusters = 4. * GetRecoParam()->GetSigmaCutForTracking() *
GetRecoParam()->GetSigmaCutForTracking();
Double_t bestChi2WithOneCluster = maxChi2WithOneCluster;
Double_t bestChi2WithTwoClusters = maxChi2WithTwoClusters;
Bool_t foundOneCluster = kFALSE;
Bool_t foundTwoClusters = kFALSE;
AliMUONTrack *newTrack = 0x0;
AliMUONVCluster *clusterCh1, *clusterCh2;
AliMUONTrackParam extrapTrackParam;
AliMUONTrackParam extrapTrackParamAtCh;
AliMUONTrackParam extrapTrackParamAtCluster1;
AliMUONTrackParam extrapTrackParamAtCluster2;
AliMUONTrackParam bestTrackParamAtCluster1;
AliMUONTrackParam bestTrackParamAtCluster2;
if (nextStation==4) extrapTrackParamAtCh = *(AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->Last();
else extrapTrackParamAtCh = *(AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->First();
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
cout<<endl<<"Track parameters and covariances at first cluster:"<<endl;
extrapTrackParamAtCh.GetParameters().Print();
extrapTrackParamAtCh.GetCovariances().Print();
}
Int_t currentChamber = extrapTrackParamAtCh.GetClusterPtr()->GetChamberId();
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCh,AliMUONConstants::ChamberThicknessInX0(currentChamber),-1.);
while (ch1 < ch2 && currentChamber > ch2 + 1) {
currentChamber--;
if (!AliMUONTrackExtrap::ExtrapToZCov(&extrapTrackParamAtCh, AliMUONConstants::DefaultChamberZ(currentChamber))) return kFALSE;
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCh,AliMUONConstants::ChamberThicknessInX0(currentChamber),-1.);
}
if (!AliMUONTrackExtrap::ExtrapToZCov(&extrapTrackParamAtCh, AliMUONConstants::DefaultChamberZ(ch2))) return kFALSE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
cout<<endl<<"Track parameters and covariances at first cluster extrapolated to z = "<<AliMUONConstants::DefaultChamberZ(ch2)<<":"<<endl;
extrapTrackParamAtCh.GetParameters().Print();
extrapTrackParamAtCh.GetCovariances().Print();
}
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: look for clusters in chamber(1..): " << ch2+1 << endl;
}
if (GetRecoParam()->CombineClusterTrackReco()) {
if (nextStation < 3) AskForNewClustersInStation(extrapTrackParamAtCh, clusterStore, nextStation);
}
Int_t nClusters = clusterStore.GetSize();
Bool_t *clusterCh1Used = new Bool_t[nClusters];
for (Int_t i = 0; i < nClusters; i++) clusterCh1Used[i] = kFALSE;
Int_t iCluster1;
TIter nextInCh1(clusterStore.CreateChamberIterator(ch1,ch1));
TIter nextInCh2(clusterStore.CreateChamberIterator(ch2,ch2));
while ( ( clusterCh2 = static_cast<AliMUONVCluster*>(nextInCh2()) ) ) {
if (!TryOneClusterFast(extrapTrackParamAtCh, clusterCh2)) continue;
chi2WithOneCluster = TryOneCluster(extrapTrackParamAtCh, clusterCh2, extrapTrackParamAtCluster2);
if (chi2WithOneCluster < maxChi2WithOneCluster) {
Bool_t foundSecondCluster = kFALSE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: found one cluster in chamber(1..): " << ch2+1
<< " (Chi2 = " << chi2WithOneCluster << ")" << endl;
clusterCh2->Print();
cout << " look for second clusters in chamber(1..): " << ch1+1 << " ..." << endl;
}
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCluster2,AliMUONConstants::ChamberThicknessInX0(ch2),-1.);
extrapTrackParam = extrapTrackParamAtCluster2;
Bool_t normalExtrap = AliMUONTrackExtrap::ExtrapToZ(&extrapTrackParam, AliMUONConstants::DefaultChamberZ(ch1));
nextInCh1.Reset();
iCluster1 = -1;
if (normalExtrap) while ( ( clusterCh1 = static_cast<AliMUONVCluster*>(nextInCh1()) ) ) {
iCluster1++;
if (!TryOneClusterFast(extrapTrackParam, clusterCh1)) continue;
chi2WithTwoClusters = TryTwoClusters(extrapTrackParamAtCluster2, clusterCh1, extrapTrackParamAtCluster1);
if (chi2WithTwoClusters < maxChi2WithTwoClusters) {
foundSecondCluster = kTRUE;
foundTwoClusters = kTRUE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: found second cluster in chamber(1..): " << ch1+1
<< " (Global Chi2 = " << chi2WithTwoClusters << ")" << endl;
clusterCh1->Print();
}
if (GetRecoParam()->TrackAllTracks()) {
newTrack = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack(trackCandidate);
UpdateTrack(*newTrack,extrapTrackParamAtCluster1,extrapTrackParamAtCluster2);
fNRecTracks++;
clusterCh1Used[iCluster1] = kTRUE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added two clusters in station(1..): " << nextStation+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else if (chi2WithTwoClusters < bestChi2WithTwoClusters) {
bestChi2WithTwoClusters = chi2WithTwoClusters;
bestTrackParamAtCluster1 = extrapTrackParamAtCluster1;
bestTrackParamAtCluster2 = extrapTrackParamAtCluster2;
}
}
}
if (!foundSecondCluster) {
foundOneCluster = kTRUE;
if (GetRecoParam()->TrackAllTracks()) {
newTrack = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack(trackCandidate);
UpdateTrack(*newTrack,extrapTrackParamAtCluster2);
fNRecTracks++;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added one cluster in chamber(1..): " << ch2+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else if (!foundTwoClusters && chi2WithOneCluster < bestChi2WithOneCluster) {
bestChi2WithOneCluster = chi2WithOneCluster;
bestTrackParamAtCluster1 = extrapTrackParamAtCluster2;
}
}
}
}
if (GetRecoParam()->TrackAllTracks() || !foundTwoClusters) {
AliMUONTrackExtrap::AddMCSEffect(&extrapTrackParamAtCh,AliMUONConstants::ChamberThicknessInX0(ch2),-1.);
Bool_t normalExtrap = AliMUONTrackExtrap::ExtrapToZCov(&extrapTrackParamAtCh, AliMUONConstants::DefaultChamberZ(ch1));
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
cout<<endl<<"Track parameters and covariances at first cluster extrapolated to z = "<<AliMUONConstants::DefaultChamberZ(ch1)<<":"<<endl;
extrapTrackParamAtCh.GetParameters().Print();
extrapTrackParamAtCh.GetCovariances().Print();
}
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: look for single clusters in chamber(1..): " << ch1+1 << endl;
}
nextInCh1.Reset();
iCluster1 = -1;
if (normalExtrap) while ( ( clusterCh1 = static_cast<AliMUONVCluster*>(nextInCh1()) ) ) {
iCluster1++;
if (clusterCh1Used[iCluster1]) continue;
if (!TryOneClusterFast(extrapTrackParamAtCh, clusterCh1)) continue;
chi2WithOneCluster = TryOneCluster(extrapTrackParamAtCh, clusterCh1, extrapTrackParamAtCluster1);
if (chi2WithOneCluster < maxChi2WithOneCluster) {
foundOneCluster = kTRUE;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: found one cluster in chamber(1..): " << ch1+1
<< " (Chi2 = " << chi2WithOneCluster << ")" << endl;
clusterCh1->Print();
}
if (GetRecoParam()->TrackAllTracks()) {
newTrack = new ((*fRecTracksPtr)[fRecTracksPtr->GetLast()+1]) AliMUONTrack(trackCandidate);
UpdateTrack(*newTrack,extrapTrackParamAtCluster1);
fNRecTracks++;
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added one cluster in chamber(1..): " << ch1+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else if (chi2WithOneCluster < bestChi2WithOneCluster) {
bestChi2WithOneCluster = chi2WithOneCluster;
bestTrackParamAtCluster1 = extrapTrackParamAtCluster1;
}
}
}
}
if (!GetRecoParam()->TrackAllTracks()) {
if (foundTwoClusters) {
UpdateTrack(trackCandidate,bestTrackParamAtCluster1,bestTrackParamAtCluster2);
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added the two best clusters in station(1..): " << nextStation+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else if (foundOneCluster) {
UpdateTrack(trackCandidate,bestTrackParamAtCluster1);
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "FollowTrackInStation: added the best cluster in chamber(1..): " << bestTrackParamAtCluster1.GetClusterPtr()->GetChamberId()+1 << endl;
if (AliLog::GetGlobalDebugLevel() >= 3) newTrack->RecursiveDump();
}
} else {
delete [] clusterCh1Used;
return kFALSE;
}
} else if (foundOneCluster || foundTwoClusters) {
fRecTracksPtr->Remove(&trackCandidate);
fNRecTracks--;
} else {
delete [] clusterCh1Used;
return kFALSE;
}
delete [] clusterCh1Used;
return kTRUE;
}
Double_t AliMUONTrackReconstructor::TryTwoClusters(const AliMUONTrackParam &trackParamAtCluster1, AliMUONVCluster* cluster2,
AliMUONTrackParam &trackParamAtCluster2)
{
trackParamAtCluster2.SetParameters(trackParamAtCluster1.GetParameters());
trackParamAtCluster2.SetZ(trackParamAtCluster1.GetZ());
trackParamAtCluster2.SetClusterPtr(cluster2);
if (!AliMUONTrackExtrap::ExtrapToZ(&trackParamAtCluster2, cluster2->GetZ())) return 2.*AliMUONTrack::MaxChi2();
AliMUONVCluster* cluster1 = trackParamAtCluster1.GetClusterPtr();
TMatrixD dPos(4,1);
dPos(0,0) = cluster1->GetX() - trackParamAtCluster1.GetNonBendingCoor();
dPos(1,0) = cluster1->GetY() - trackParamAtCluster1.GetBendingCoor();
dPos(2,0) = cluster2->GetX() - trackParamAtCluster2.GetNonBendingCoor();
dPos(3,0) = cluster2->GetY() - trackParamAtCluster2.GetBendingCoor();
TMatrixD error(4,4);
error.Zero();
if (trackParamAtCluster1.CovariancesExist()) {
TMatrixD paramAtCluster1Save(trackParamAtCluster1.GetParameters());
Double_t nonBendingCoor2 = trackParamAtCluster2.GetNonBendingCoor();
Double_t bendingCoor2 = trackParamAtCluster2.GetBendingCoor();
AliMUONTrackParam trackParam(trackParamAtCluster1);
const TMatrixD& kParamCov = trackParam.GetCovariances();
TMatrixD jacob(4,5);
jacob.Zero();
jacob(0,0) = 1.;
jacob(1,2) = 1.;
TMatrixD dParam(5,1);
Double_t direction[5] = {-1.,-1.,1.,1.,-1.};
for (Int_t i=0; i<5; i++) {
if (kParamCov(i,i) == 0.) continue;
for (Int_t j=0; j<5; j++) {
if (j==i) {
dParam(j,0) = TMath::Sqrt(kParamCov(i,i));
dParam(j,0) *= TMath::Sign(1.,direction[j]*paramAtCluster1Save(j,0));
} else dParam(j,0) = 0.;
}
trackParam.SetParameters(paramAtCluster1Save);
trackParam.AddParameters(dParam);
trackParam.SetZ(cluster1->GetZ());
if (!AliMUONTrackExtrap::ExtrapToZ(&trackParam,cluster2->GetZ())) return 2.*AliMUONTrack::MaxChi2();
jacob(2,i) = (trackParam.GetNonBendingCoor() - nonBendingCoor2) / dParam(i,0);
jacob(3,i) = (trackParam.GetBendingCoor() - bendingCoor2 ) / dParam(i,0);
}
TMatrixD tmp(jacob,TMatrixD::kMult,kParamCov);
error = TMatrixD(tmp,TMatrixD::kMultTranspose,jacob);
}
error(0,0) += cluster1->GetErrX2();
error(1,1) += cluster1->GetErrY2();
error(2,2) += cluster2->GetErrX2();
error(3,3) += cluster2->GetErrY2();
if (error.Determinant() != 0) {
error.Invert();
} else {
AliWarning(" Determinant error=0");
return 2.*AliMUONTrack::MaxChi2();
}
TMatrixD tmp2(dPos,TMatrixD::kTransposeMult,error);
TMatrixD result(tmp2,TMatrixD::kMult,dPos);
return result(0,0);
}
void AliMUONTrackReconstructor::UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster)
{
AliMUONVCluster* cluster = trackParamAtCluster.GetClusterPtr();
Double_t deltaX = trackParamAtCluster.GetNonBendingCoor() - cluster->GetX();
Double_t deltaY = trackParamAtCluster.GetBendingCoor() - cluster->GetY();
Double_t localChi2 = deltaX*deltaX / cluster->GetErrX2() +
deltaY*deltaY / cluster->GetErrY2();
if (GetRecoParam()->RequestStation(cluster->GetChamberId()/2))
trackParamAtCluster.SetRemovable(kFALSE);
else trackParamAtCluster.SetRemovable(kTRUE);
trackParamAtCluster.SetLocalChi2(0.);
track.SetGlobalChi2(track.GetGlobalChi2() + localChi2);
track.AddTrackParamAtCluster(trackParamAtCluster,*cluster);
}
void AliMUONTrackReconstructor::UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster1, AliMUONTrackParam &trackParamAtCluster2)
{
AliMUONVCluster* cluster1 = trackParamAtCluster1.GetClusterPtr();
Double_t deltaX = trackParamAtCluster1.GetNonBendingCoor() - cluster1->GetX();
Double_t deltaY = trackParamAtCluster1.GetBendingCoor() - cluster1->GetY();
Double_t localChi2AtCluster1 = deltaX*deltaX / cluster1->GetErrX2() +
deltaY*deltaY / cluster1->GetErrY2();
trackParamAtCluster1.SetLocalChi2(localChi2AtCluster1);
trackParamAtCluster1.SetRemovable(kTRUE);
AliMUONVCluster* cluster2 = trackParamAtCluster2.GetClusterPtr();
deltaX = trackParamAtCluster2.GetNonBendingCoor() - cluster2->GetX();
deltaY = trackParamAtCluster2.GetBendingCoor() - cluster2->GetY();
Double_t localChi2AtCluster2 = deltaX*deltaX / cluster2->GetErrX2() +
deltaY*deltaY / cluster2->GetErrY2();
trackParamAtCluster2.SetLocalChi2(localChi2AtCluster2);
trackParamAtCluster2.SetRemovable(kTRUE);
track.SetGlobalChi2(track.GetGlobalChi2() + localChi2AtCluster1 + localChi2AtCluster2);
track.AddTrackParamAtCluster(trackParamAtCluster1,*cluster1);
track.AddTrackParamAtCluster(trackParamAtCluster2,*cluster2);
}
Bool_t AliMUONTrackReconstructor::RecoverTrack(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextStation)
{
AliDebug(1,"Enter RecoverTrack");
if (nextStation > 1) return kFALSE;
Int_t worstClusterNumber = -1;
Double_t localChi2, worstLocalChi2 = -1.;
for (Int_t clusterNumber = 0; clusterNumber < 2; clusterNumber++) {
AliMUONTrackParam *trackParamAtCluster = (AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->UncheckedAt(clusterNumber);
if (trackParamAtCluster->GetClusterPtr()->GetChamberId()/2 != nextStation+1) break;
if (!trackParamAtCluster->IsRemovable()) return kFALSE;
if (GetRecoParam()->RequestStation(nextStation+1)) trackParamAtCluster->SetRemovable(kFALSE);
localChi2 = trackParamAtCluster->GetLocalChi2();
if (localChi2 > worstLocalChi2) {
worstLocalChi2 = localChi2;
worstClusterNumber = clusterNumber;
}
}
if (worstClusterNumber < 0) return kFALSE;
trackCandidate.RemoveTrackParamAtCluster((AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->UncheckedAt(worstClusterNumber));
Fit(trackCandidate, kFALSE, kFALSE, kTRUE);
if (trackCandidate.GetNormalizedChi2() > GetRecoParam()->GetSigmaCutForTracking() * GetRecoParam()->GetSigmaCutForTracking()) return kFALSE;
if (!IsAcceptable(*((AliMUONTrackParam*)trackCandidate.GetTrackParamAtCluster()->First()))) return kFALSE;
return FollowTrackInStation(trackCandidate,clusterStore,nextStation);
}
void AliMUONTrackReconstructor::SetVertexErrXY2ForFit(AliMUONTrack &trackCandidate)
{
AliDebug(1,"Enter SetVertexForFit");
Double_t nonBendingReso2 = GetRecoParam()->GetNonBendingVertexDispersion() *
GetRecoParam()->GetNonBendingVertexDispersion();
Double_t bendingReso2 = GetRecoParam()->GetBendingVertexDispersion() *
GetRecoParam()->GetBendingVertexDispersion();
AliMUONTrackParam paramAtVertex(*((AliMUONTrackParam*)(trackCandidate.GetTrackParamAtCluster()->First())));
paramAtVertex.DeleteCovariances();
if (!AliMUONTrackExtrap::ExtrapToZ(¶mAtVertex,AliMUONConstants::AbsZEnd())) {
nonBendingReso2 = 0.;
bendingReso2 = 0.;
} else {
AliMUONTrackExtrap::ExtrapToVertexUncorrected(¶mAtVertex,0.);
const TMatrixD& kParamCov = paramAtVertex.GetCovariances();
nonBendingReso2 += kParamCov(0,0);
bendingReso2 += kParamCov(2,2);
}
trackCandidate.SetVertexErrXY2(nonBendingReso2,bendingReso2);
}
void AliMUONTrackReconstructor::Fit(AliMUONTrack &track, Bool_t includeMCS, Bool_t fitWithVertex, Bool_t calcCov)
{
AliDebug(1,"Enter Fit");
Double_t benC, errorParam, invBenP, nonBenC, x, y;
AliMUONTrackParam *trackParam;
Double_t arg[1], fedm, errdef, globalChi2;
Int_t npari, nparx;
Int_t status, covStatus;
if (!gMinuit) gMinuit = new TMinuit(6);
gMinuit->mncler();
gMinuit->SetObjectFit(&track);
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 2) || (AliLog::GetGlobalDebugLevel() >= 2)) {
arg[0] = 1;
gMinuit->mnexcm("SET PRI", arg, 1, status);
gMinuit->mnexcm("SHO COV", arg, 0, status);
} else {
arg[0] = -1;
gMinuit->mnexcm("SET PRI", arg, 1, status);
}
gMinuit->mnexcm("SET NOW", arg, 0, status);
track.FitWithMCS(includeMCS);
if (includeMCS) {
if (!track.UpdateTrackParamAtCluster() || !track.ComputeClusterWeights()) {
AliWarning("cannot take into account the multiple scattering effects");
track.FitWithMCS(kFALSE);
}
}
track.FitWithVertex(fitWithVertex);
if (fitWithVertex) SetVertexErrXY2ForFit(track);
gMinuit->SetFCN(TrackChi2);
trackParam = (AliMUONTrackParam*) (track.GetTrackParamAtCluster()->First());
Double_t maxIBM = 1. / GetRecoParam()->GetMinBendingMomentum();
gMinuit->mnparm(0, "X", trackParam->GetNonBendingCoor(), 0.03, -500.0, 500.0, status);
gMinuit->mnparm(1, "NonBenS", trackParam->GetNonBendingSlope(), 0.001, -1., 1., status);
gMinuit->mnparm(2, "Y", trackParam->GetBendingCoor(), 0.10, -500.0, 500.0, status);
gMinuit->mnparm(3, "BenS", trackParam->GetBendingSlope(), 0.001, -1.5, 1.5, status);
gMinuit->mnparm(4, "InvBenP", trackParam->GetInverseBendingMomentum(), 0.003, -maxIBM, maxIBM, status);
gMinuit->mnexcm("MIGRAD", arg, 0, status);
if (calcCov) gMinuit->mnexcm("HESSE", arg, 0, status);
gMinuit->GetParameter(0, x, errorParam);
trackParam->SetNonBendingCoor(x);
gMinuit->GetParameter(1, nonBenC, errorParam);
trackParam->SetNonBendingSlope(nonBenC);
gMinuit->GetParameter(2, y, errorParam);
trackParam->SetBendingCoor(y);
gMinuit->GetParameter(3, benC, errorParam);
trackParam->SetBendingSlope(benC);
gMinuit->GetParameter(4, invBenP, errorParam);
trackParam->SetInverseBendingMomentum(invBenP);
gMinuit->mnstat(globalChi2, fedm, errdef, npari, nparx, covStatus);
track.SetGlobalChi2(globalChi2);
if (calcCov) {
Double_t matrix[5][5];
for (Int_t i=0; i<5; i++) for (Int_t j=0; j<5; j++) matrix[i][j] = 0.;
gMinuit->mnemat(&matrix[0][0],5);
if (covStatus == 3) trackParam->SetCovariances(matrix);
else trackParam->SetVariances(matrix);
} else trackParam->DeleteCovariances();
}
void TrackChi2(Int_t & , Double_t * , Double_t &chi2, Double_t *param, Int_t )
{
AliMUONTrack *trackBeingFitted = (AliMUONTrack*) gMinuit->GetObjectFit();
AliMUONTrackParam* trackParamAtCluster = (AliMUONTrackParam*) trackBeingFitted->GetTrackParamAtCluster()->First();
Double_t dX, dY;
chi2 = 0.;
trackParamAtCluster->SetNonBendingCoor(param[0]);
trackParamAtCluster->SetNonBendingSlope(param[1]);
trackParamAtCluster->SetBendingCoor(param[2]);
trackParamAtCluster->SetBendingSlope(param[3]);
trackParamAtCluster->SetInverseBendingMomentum(param[4]);
if (!trackBeingFitted->UpdateTrackParamAtCluster()) {
chi2 = 2.*AliMUONTrack::MaxChi2();
return;
}
if (trackBeingFitted->FitWithVertex()) {
Double_t nonBendingReso2,bendingReso2;
trackBeingFitted->GetVertexErrXY2(nonBendingReso2,bendingReso2);
AliMUONTrackParam paramAtVertex(*trackParamAtCluster);
if (nonBendingReso2 != 0. && bendingReso2 != 0. && AliMUONTrackExtrap::ExtrapToZ(¶mAtVertex, 0.)) {
dX = paramAtVertex.GetNonBendingCoor();
dY = paramAtVertex.GetBendingCoor();
chi2 += dX * dX / nonBendingReso2 + dY * dY / bendingReso2;
} else {
chi2 = 2.*AliMUONTrack::MaxChi2();
return;
}
}
chi2 += trackBeingFitted->ComputeGlobalChi2(trackBeingFitted->FitWithMCS());
}
Bool_t AliMUONTrackReconstructor::ComplementTracks(const AliMUONVClusterStore& clusterStore)
{
AliDebug(1,"Enter ComplementTracks");
Int_t chamberId, detElemId;
Double_t chi2OfCluster, bestChi2OfCluster;
Double_t sigmaCut2 = GetRecoParam()->GetSigmaCutForTracking() *
GetRecoParam()->GetSigmaCutForTracking();
Bool_t foundOneCluster, trackModified, hasChanged = kFALSE;
AliMUONVCluster* cluster;
AliMUONTrackParam *trackParam, *nextTrackParam, copyOfTrackParam, trackParamAtCluster, bestTrackParamAtCluster;
AliMUONTrack *track = (AliMUONTrack*) fRecTracksPtr->First();
while (track) {
trackModified = kFALSE;
trackParam = (AliMUONTrackParam*)track->GetTrackParamAtCluster()->First();
while (trackParam) {
foundOneCluster = kFALSE;
bestChi2OfCluster = 2. * sigmaCut2;
chamberId = trackParam->GetClusterPtr()->GetChamberId();
detElemId = trackParam->GetClusterPtr()->GetDetElemId();
nextTrackParam = (AliMUONTrackParam*)track->GetTrackParamAtCluster()->After(trackParam);
copyOfTrackParam.SetZ(trackParam->GetZ());
copyOfTrackParam.SetParameters(trackParam->GetSmoothParameters());
copyOfTrackParam.SetCovariances(trackParam->GetSmoothCovariances());
TIter nextInCh(clusterStore.CreateChamberIterator(chamberId,chamberId));
while ( ( cluster = static_cast<AliMUONVCluster*>(nextInCh()) ) ) {
if (cluster->GetDetElemId() == detElemId) continue;
if (!TryOneClusterFast(copyOfTrackParam, cluster)) continue;
chi2OfCluster = TryOneCluster(copyOfTrackParam, cluster, trackParamAtCluster);
if (chi2OfCluster < bestChi2OfCluster) {
bestChi2OfCluster = chi2OfCluster;
bestTrackParamAtCluster = trackParamAtCluster;
foundOneCluster = kTRUE;
}
}
if (foundOneCluster) {
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "ComplementTracks: found one cluster in chamber(1..): " << chamberId+1 << endl;
bestTrackParamAtCluster.GetClusterPtr()->Print();
cout<<endl<<"Track parameters and covariances at cluster:"<<endl;
bestTrackParamAtCluster.GetParameters().Print();
bestTrackParamAtCluster.GetCovariances().Print();
}
trackParam->SetRemovable(kTRUE);
bestTrackParamAtCluster.SetRemovable(kTRUE);
track->AddTrackParamAtCluster(bestTrackParamAtCluster,*(bestTrackParamAtCluster.GetClusterPtr()));
trackModified = kTRUE;
hasChanged = kTRUE;
}
trackParam = nextTrackParam;
}
if (trackModified) Fit(*track, kTRUE, kFALSE, kTRUE);
track = (AliMUONTrack*) fRecTracksPtr->After(track);
}
return hasChanged;
}
void AliMUONTrackReconstructor::ImproveTrack(AliMUONTrack &track)
{
AliDebug(1,"Enter ImproveTrack");
Double_t localChi2, worstLocalChi2;
AliMUONTrackParam *trackParamAtCluster, *worstTrackParamAtCluster;
Double_t sigmaCut2 = GetRecoParam()->GetSigmaCutForImprovement() *
GetRecoParam()->GetSigmaCutForImprovement();
while (!track.IsImproved()) {
track.TagRemovableClusters(GetRecoParam()->RequestedStationMask());
if (!track.UpdateCovTrackParamAtCluster()) {
AliWarning("unable to update track parameters and covariances --> stop improvement");
break;
}
track.ComputeLocalChi2(kTRUE);
worstTrackParamAtCluster = NULL;
worstLocalChi2 = 0.;
trackParamAtCluster = (AliMUONTrackParam*) track.GetTrackParamAtCluster()->First();
while (trackParamAtCluster) {
localChi2 = trackParamAtCluster->GetLocalChi2();
if (localChi2 > worstLocalChi2) {
worstLocalChi2 = localChi2;
worstTrackParamAtCluster = trackParamAtCluster;
}
trackParamAtCluster = (AliMUONTrackParam*) track.GetTrackParamAtCluster()->After(trackParamAtCluster);
}
if (!worstTrackParamAtCluster) {
AliWarning("Bad local chi2 values?");
break;
}
if (worstLocalChi2 < 2. * sigmaCut2) {
track.SetImproved(kTRUE);
break;
}
if (!worstTrackParamAtCluster->IsRemovable()) break;
track.RemoveTrackParamAtCluster(worstTrackParamAtCluster);
Fit(track, kTRUE, kFALSE, kTRUE);
if ((AliLog::GetDebugLevel("MUON","AliMUONTrackReconstructor") >= 1) || (AliLog::GetGlobalDebugLevel() >= 1)) {
cout << "ImproveTracks: track " << fRecTracksPtr->IndexOf(&track)+1 << " improved " << endl;
}
}
}
Bool_t AliMUONTrackReconstructor::FinalizeTrack(AliMUONTrack &track)
{
AliDebug(1,"Enter FinalizeTrack");
if (!track.IsImproved() && !track.UpdateCovTrackParamAtCluster()) {
AliWarning("finalization failed due to extrapolation problem");
return kFALSE;
}
return kTRUE;
}
Bool_t AliMUONTrackReconstructor::RefitTrack(AliMUONTrack &track, Bool_t enableImprovement)
{
if (track.GetNClusters() < 3) {
AliWarning("the track does not contain enough clusters --> unable to refit");
return kFALSE;
}
AliMUONTrackParam* firstTrackParam = (AliMUONTrackParam*) track.GetTrackParamAtCluster()->First();
if (firstTrackParam->GetInverseBendingMomentum() == 0.) {
AliWarning("track parameters at first chamber are not initialized --> unable to refit");
return kFALSE;
}
if (!track.UpdateTrackParamAtCluster()) {
AliWarning("bad track refitting due to extrapolation failure");
return kFALSE;
}
Fit(track, kTRUE, kFALSE, kTRUE);
track.SetImproved(kFALSE);
if (enableImprovement && GetRecoParam()->ImproveTracks()) ImproveTrack(track);
if (track.GetGlobalChi2() < AliMUONTrack::MaxChi2()) return FinalizeTrack(track);
else {
AliWarning("track not finalized due to extrapolation failure");
return kFALSE;
}
}
AliMUONTrackReconstructor.cxx:1 AliMUONTrackReconstructor.cxx:2 AliMUONTrackReconstructor.cxx:3 AliMUONTrackReconstructor.cxx:4 AliMUONTrackReconstructor.cxx:5 AliMUONTrackReconstructor.cxx:6 AliMUONTrackReconstructor.cxx:7 AliMUONTrackReconstructor.cxx:8 AliMUONTrackReconstructor.cxx:9 AliMUONTrackReconstructor.cxx:10 AliMUONTrackReconstructor.cxx:11 AliMUONTrackReconstructor.cxx:12 AliMUONTrackReconstructor.cxx:13 AliMUONTrackReconstructor.cxx:14 AliMUONTrackReconstructor.cxx:15 AliMUONTrackReconstructor.cxx:16 AliMUONTrackReconstructor.cxx:17 AliMUONTrackReconstructor.cxx:18 AliMUONTrackReconstructor.cxx:19 AliMUONTrackReconstructor.cxx:20 AliMUONTrackReconstructor.cxx:21 AliMUONTrackReconstructor.cxx:22 AliMUONTrackReconstructor.cxx:23 AliMUONTrackReconstructor.cxx:24 AliMUONTrackReconstructor.cxx:25 AliMUONTrackReconstructor.cxx:26 AliMUONTrackReconstructor.cxx:27 AliMUONTrackReconstructor.cxx:28 AliMUONTrackReconstructor.cxx:29 AliMUONTrackReconstructor.cxx:30 AliMUONTrackReconstructor.cxx:31 AliMUONTrackReconstructor.cxx:32 AliMUONTrackReconstructor.cxx:33 AliMUONTrackReconstructor.cxx:34 AliMUONTrackReconstructor.cxx:35 AliMUONTrackReconstructor.cxx:36 AliMUONTrackReconstructor.cxx:37 AliMUONTrackReconstructor.cxx:38 AliMUONTrackReconstructor.cxx:39 AliMUONTrackReconstructor.cxx:40 AliMUONTrackReconstructor.cxx:41 AliMUONTrackReconstructor.cxx:42 AliMUONTrackReconstructor.cxx:43 AliMUONTrackReconstructor.cxx:44 AliMUONTrackReconstructor.cxx:45 AliMUONTrackReconstructor.cxx:46 AliMUONTrackReconstructor.cxx:47 AliMUONTrackReconstructor.cxx:48 AliMUONTrackReconstructor.cxx:49 AliMUONTrackReconstructor.cxx:50 AliMUONTrackReconstructor.cxx:51 AliMUONTrackReconstructor.cxx:52 AliMUONTrackReconstructor.cxx:53 AliMUONTrackReconstructor.cxx:54 AliMUONTrackReconstructor.cxx:55 AliMUONTrackReconstructor.cxx:56 AliMUONTrackReconstructor.cxx:57 AliMUONTrackReconstructor.cxx:58 AliMUONTrackReconstructor.cxx:59 AliMUONTrackReconstructor.cxx:60 AliMUONTrackReconstructor.cxx:61 AliMUONTrackReconstructor.cxx:62 AliMUONTrackReconstructor.cxx:63 AliMUONTrackReconstructor.cxx:64 AliMUONTrackReconstructor.cxx:65 AliMUONTrackReconstructor.cxx:66 AliMUONTrackReconstructor.cxx:67 AliMUONTrackReconstructor.cxx:68 AliMUONTrackReconstructor.cxx:69 AliMUONTrackReconstructor.cxx:70 AliMUONTrackReconstructor.cxx:71 AliMUONTrackReconstructor.cxx:72 AliMUONTrackReconstructor.cxx:73 AliMUONTrackReconstructor.cxx:74 AliMUONTrackReconstructor.cxx:75 AliMUONTrackReconstructor.cxx:76 AliMUONTrackReconstructor.cxx:77 AliMUONTrackReconstructor.cxx:78 AliMUONTrackReconstructor.cxx:79 AliMUONTrackReconstructor.cxx:80 AliMUONTrackReconstructor.cxx:81 AliMUONTrackReconstructor.cxx:82 AliMUONTrackReconstructor.cxx:83 AliMUONTrackReconstructor.cxx:84 AliMUONTrackReconstructor.cxx:85 AliMUONTrackReconstructor.cxx:86 AliMUONTrackReconstructor.cxx:87 AliMUONTrackReconstructor.cxx:88 AliMUONTrackReconstructor.cxx:89 AliMUONTrackReconstructor.cxx:90 AliMUONTrackReconstructor.cxx:91 AliMUONTrackReconstructor.cxx:92 AliMUONTrackReconstructor.cxx:93 AliMUONTrackReconstructor.cxx:94 AliMUONTrackReconstructor.cxx:95 AliMUONTrackReconstructor.cxx:96 AliMUONTrackReconstructor.cxx:97 AliMUONTrackReconstructor.cxx:98 AliMUONTrackReconstructor.cxx:99 AliMUONTrackReconstructor.cxx:100 AliMUONTrackReconstructor.cxx:101 AliMUONTrackReconstructor.cxx:102 AliMUONTrackReconstructor.cxx:103 AliMUONTrackReconstructor.cxx:104 AliMUONTrackReconstructor.cxx:105 AliMUONTrackReconstructor.cxx:106 AliMUONTrackReconstructor.cxx:107 AliMUONTrackReconstructor.cxx:108 AliMUONTrackReconstructor.cxx:109 AliMUONTrackReconstructor.cxx:110 AliMUONTrackReconstructor.cxx:111 AliMUONTrackReconstructor.cxx:112 AliMUONTrackReconstructor.cxx:113 AliMUONTrackReconstructor.cxx:114 AliMUONTrackReconstructor.cxx:115 AliMUONTrackReconstructor.cxx:116 AliMUONTrackReconstructor.cxx:117 AliMUONTrackReconstructor.cxx:118 AliMUONTrackReconstructor.cxx:119 AliMUONTrackReconstructor.cxx:120 AliMUONTrackReconstructor.cxx:121 AliMUONTrackReconstructor.cxx:122 AliMUONTrackReconstructor.cxx:123 AliMUONTrackReconstructor.cxx:124 AliMUONTrackReconstructor.cxx:125 AliMUONTrackReconstructor.cxx:126 AliMUONTrackReconstructor.cxx:127 AliMUONTrackReconstructor.cxx:128 AliMUONTrackReconstructor.cxx:129 AliMUONTrackReconstructor.cxx:130 AliMUONTrackReconstructor.cxx:131 AliMUONTrackReconstructor.cxx:132 AliMUONTrackReconstructor.cxx:133 AliMUONTrackReconstructor.cxx:134 AliMUONTrackReconstructor.cxx:135 AliMUONTrackReconstructor.cxx:136 AliMUONTrackReconstructor.cxx:137 AliMUONTrackReconstructor.cxx:138 AliMUONTrackReconstructor.cxx:139 AliMUONTrackReconstructor.cxx:140 AliMUONTrackReconstructor.cxx:141 AliMUONTrackReconstructor.cxx:142 AliMUONTrackReconstructor.cxx:143 AliMUONTrackReconstructor.cxx:144 AliMUONTrackReconstructor.cxx:145 AliMUONTrackReconstructor.cxx:146 AliMUONTrackReconstructor.cxx:147 AliMUONTrackReconstructor.cxx:148 AliMUONTrackReconstructor.cxx:149 AliMUONTrackReconstructor.cxx:150 AliMUONTrackReconstructor.cxx:151 AliMUONTrackReconstructor.cxx:152 AliMUONTrackReconstructor.cxx:153 AliMUONTrackReconstructor.cxx:154 AliMUONTrackReconstructor.cxx:155 AliMUONTrackReconstructor.cxx:156 AliMUONTrackReconstructor.cxx:157 AliMUONTrackReconstructor.cxx:158 AliMUONTrackReconstructor.cxx:159 AliMUONTrackReconstructor.cxx:160 AliMUONTrackReconstructor.cxx:161 AliMUONTrackReconstructor.cxx:162 AliMUONTrackReconstructor.cxx:163 AliMUONTrackReconstructor.cxx:164 AliMUONTrackReconstructor.cxx:165 AliMUONTrackReconstructor.cxx:166 AliMUONTrackReconstructor.cxx:167 AliMUONTrackReconstructor.cxx:168 AliMUONTrackReconstructor.cxx:169 AliMUONTrackReconstructor.cxx:170 AliMUONTrackReconstructor.cxx:171 AliMUONTrackReconstructor.cxx:172 AliMUONTrackReconstructor.cxx:173 AliMUONTrackReconstructor.cxx:174 AliMUONTrackReconstructor.cxx:175 AliMUONTrackReconstructor.cxx:176 AliMUONTrackReconstructor.cxx:177 AliMUONTrackReconstructor.cxx:178 AliMUONTrackReconstructor.cxx:179 AliMUONTrackReconstructor.cxx:180 AliMUONTrackReconstructor.cxx:181 AliMUONTrackReconstructor.cxx:182 AliMUONTrackReconstructor.cxx:183 AliMUONTrackReconstructor.cxx:184 AliMUONTrackReconstructor.cxx:185 AliMUONTrackReconstructor.cxx:186 AliMUONTrackReconstructor.cxx:187 AliMUONTrackReconstructor.cxx:188 AliMUONTrackReconstructor.cxx:189 AliMUONTrackReconstructor.cxx:190 AliMUONTrackReconstructor.cxx:191 AliMUONTrackReconstructor.cxx:192 AliMUONTrackReconstructor.cxx:193 AliMUONTrackReconstructor.cxx:194 AliMUONTrackReconstructor.cxx:195 AliMUONTrackReconstructor.cxx:196 AliMUONTrackReconstructor.cxx:197 AliMUONTrackReconstructor.cxx:198 AliMUONTrackReconstructor.cxx:199 AliMUONTrackReconstructor.cxx:200 AliMUONTrackReconstructor.cxx:201 AliMUONTrackReconstructor.cxx:202 AliMUONTrackReconstructor.cxx:203 AliMUONTrackReconstructor.cxx:204 AliMUONTrackReconstructor.cxx:205 AliMUONTrackReconstructor.cxx:206 AliMUONTrackReconstructor.cxx:207 AliMUONTrackReconstructor.cxx:208 AliMUONTrackReconstructor.cxx:209 AliMUONTrackReconstructor.cxx:210 AliMUONTrackReconstructor.cxx:211 AliMUONTrackReconstructor.cxx:212 AliMUONTrackReconstructor.cxx:213 AliMUONTrackReconstructor.cxx:214 AliMUONTrackReconstructor.cxx:215 AliMUONTrackReconstructor.cxx:216 AliMUONTrackReconstructor.cxx:217 AliMUONTrackReconstructor.cxx:218 AliMUONTrackReconstructor.cxx:219 AliMUONTrackReconstructor.cxx:220 AliMUONTrackReconstructor.cxx:221 AliMUONTrackReconstructor.cxx:222 AliMUONTrackReconstructor.cxx:223 AliMUONTrackReconstructor.cxx:224 AliMUONTrackReconstructor.cxx:225 AliMUONTrackReconstructor.cxx:226 AliMUONTrackReconstructor.cxx:227 AliMUONTrackReconstructor.cxx:228 AliMUONTrackReconstructor.cxx:229 AliMUONTrackReconstructor.cxx:230 AliMUONTrackReconstructor.cxx:231 AliMUONTrackReconstructor.cxx:232 AliMUONTrackReconstructor.cxx:233 AliMUONTrackReconstructor.cxx:234 AliMUONTrackReconstructor.cxx:235 AliMUONTrackReconstructor.cxx:236 AliMUONTrackReconstructor.cxx:237 AliMUONTrackReconstructor.cxx:238 AliMUONTrackReconstructor.cxx:239 AliMUONTrackReconstructor.cxx:240 AliMUONTrackReconstructor.cxx:241 AliMUONTrackReconstructor.cxx:242 AliMUONTrackReconstructor.cxx:243 AliMUONTrackReconstructor.cxx:244 AliMUONTrackReconstructor.cxx:245 AliMUONTrackReconstructor.cxx:246 AliMUONTrackReconstructor.cxx:247 AliMUONTrackReconstructor.cxx:248 AliMUONTrackReconstructor.cxx:249 AliMUONTrackReconstructor.cxx:250 AliMUONTrackReconstructor.cxx:251 AliMUONTrackReconstructor.cxx:252 AliMUONTrackReconstructor.cxx:253 AliMUONTrackReconstructor.cxx:254 AliMUONTrackReconstructor.cxx:255 AliMUONTrackReconstructor.cxx:256 AliMUONTrackReconstructor.cxx:257 AliMUONTrackReconstructor.cxx:258 AliMUONTrackReconstructor.cxx:259 AliMUONTrackReconstructor.cxx:260 AliMUONTrackReconstructor.cxx:261 AliMUONTrackReconstructor.cxx:262 AliMUONTrackReconstructor.cxx:263 AliMUONTrackReconstructor.cxx:264 AliMUONTrackReconstructor.cxx:265 AliMUONTrackReconstructor.cxx:266 AliMUONTrackReconstructor.cxx:267 AliMUONTrackReconstructor.cxx:268 AliMUONTrackReconstructor.cxx:269 AliMUONTrackReconstructor.cxx:270 AliMUONTrackReconstructor.cxx:271 AliMUONTrackReconstructor.cxx:272 AliMUONTrackReconstructor.cxx:273 AliMUONTrackReconstructor.cxx:274 AliMUONTrackReconstructor.cxx:275 AliMUONTrackReconstructor.cxx:276 AliMUONTrackReconstructor.cxx:277 AliMUONTrackReconstructor.cxx:278 AliMUONTrackReconstructor.cxx:279 AliMUONTrackReconstructor.cxx:280 AliMUONTrackReconstructor.cxx:281 AliMUONTrackReconstructor.cxx:282 AliMUONTrackReconstructor.cxx:283 AliMUONTrackReconstructor.cxx:284 AliMUONTrackReconstructor.cxx:285 AliMUONTrackReconstructor.cxx:286 AliMUONTrackReconstructor.cxx:287 AliMUONTrackReconstructor.cxx:288 AliMUONTrackReconstructor.cxx:289 AliMUONTrackReconstructor.cxx:290 AliMUONTrackReconstructor.cxx:291 AliMUONTrackReconstructor.cxx:292 AliMUONTrackReconstructor.cxx:293 AliMUONTrackReconstructor.cxx:294 AliMUONTrackReconstructor.cxx:295 AliMUONTrackReconstructor.cxx:296 AliMUONTrackReconstructor.cxx:297 AliMUONTrackReconstructor.cxx:298 AliMUONTrackReconstructor.cxx:299 AliMUONTrackReconstructor.cxx:300 AliMUONTrackReconstructor.cxx:301 AliMUONTrackReconstructor.cxx:302 AliMUONTrackReconstructor.cxx:303 AliMUONTrackReconstructor.cxx:304 AliMUONTrackReconstructor.cxx:305 AliMUONTrackReconstructor.cxx:306 AliMUONTrackReconstructor.cxx:307 AliMUONTrackReconstructor.cxx:308 AliMUONTrackReconstructor.cxx:309 AliMUONTrackReconstructor.cxx:310 AliMUONTrackReconstructor.cxx:311 AliMUONTrackReconstructor.cxx:312 AliMUONTrackReconstructor.cxx:313 AliMUONTrackReconstructor.cxx:314 AliMUONTrackReconstructor.cxx:315 AliMUONTrackReconstructor.cxx:316 AliMUONTrackReconstructor.cxx:317 AliMUONTrackReconstructor.cxx:318 AliMUONTrackReconstructor.cxx:319 AliMUONTrackReconstructor.cxx:320 AliMUONTrackReconstructor.cxx:321 AliMUONTrackReconstructor.cxx:322 AliMUONTrackReconstructor.cxx:323 AliMUONTrackReconstructor.cxx:324 AliMUONTrackReconstructor.cxx:325 AliMUONTrackReconstructor.cxx:326 AliMUONTrackReconstructor.cxx:327 AliMUONTrackReconstructor.cxx:328 AliMUONTrackReconstructor.cxx:329 AliMUONTrackReconstructor.cxx:330 AliMUONTrackReconstructor.cxx:331 AliMUONTrackReconstructor.cxx:332 AliMUONTrackReconstructor.cxx:333 AliMUONTrackReconstructor.cxx:334 AliMUONTrackReconstructor.cxx:335 AliMUONTrackReconstructor.cxx:336 AliMUONTrackReconstructor.cxx:337 AliMUONTrackReconstructor.cxx:338 AliMUONTrackReconstructor.cxx:339 AliMUONTrackReconstructor.cxx:340 AliMUONTrackReconstructor.cxx:341 AliMUONTrackReconstructor.cxx:342 AliMUONTrackReconstructor.cxx:343 AliMUONTrackReconstructor.cxx:344 AliMUONTrackReconstructor.cxx:345 AliMUONTrackReconstructor.cxx:346 AliMUONTrackReconstructor.cxx:347 AliMUONTrackReconstructor.cxx:348 AliMUONTrackReconstructor.cxx:349 AliMUONTrackReconstructor.cxx:350 AliMUONTrackReconstructor.cxx:351 AliMUONTrackReconstructor.cxx:352 AliMUONTrackReconstructor.cxx:353 AliMUONTrackReconstructor.cxx:354 AliMUONTrackReconstructor.cxx:355 AliMUONTrackReconstructor.cxx:356 AliMUONTrackReconstructor.cxx:357 AliMUONTrackReconstructor.cxx:358 AliMUONTrackReconstructor.cxx:359 AliMUONTrackReconstructor.cxx:360 AliMUONTrackReconstructor.cxx:361 AliMUONTrackReconstructor.cxx:362 AliMUONTrackReconstructor.cxx:363 AliMUONTrackReconstructor.cxx:364 AliMUONTrackReconstructor.cxx:365 AliMUONTrackReconstructor.cxx:366 AliMUONTrackReconstructor.cxx:367 AliMUONTrackReconstructor.cxx:368 AliMUONTrackReconstructor.cxx:369 AliMUONTrackReconstructor.cxx:370 AliMUONTrackReconstructor.cxx:371 AliMUONTrackReconstructor.cxx:372 AliMUONTrackReconstructor.cxx:373 AliMUONTrackReconstructor.cxx:374 AliMUONTrackReconstructor.cxx:375 AliMUONTrackReconstructor.cxx:376 AliMUONTrackReconstructor.cxx:377 AliMUONTrackReconstructor.cxx:378 AliMUONTrackReconstructor.cxx:379 AliMUONTrackReconstructor.cxx:380 AliMUONTrackReconstructor.cxx:381 AliMUONTrackReconstructor.cxx:382 AliMUONTrackReconstructor.cxx:383 AliMUONTrackReconstructor.cxx:384 AliMUONTrackReconstructor.cxx:385 AliMUONTrackReconstructor.cxx:386 AliMUONTrackReconstructor.cxx:387 AliMUONTrackReconstructor.cxx:388 AliMUONTrackReconstructor.cxx:389 AliMUONTrackReconstructor.cxx:390 AliMUONTrackReconstructor.cxx:391 AliMUONTrackReconstructor.cxx:392 AliMUONTrackReconstructor.cxx:393 AliMUONTrackReconstructor.cxx:394 AliMUONTrackReconstructor.cxx:395 AliMUONTrackReconstructor.cxx:396 AliMUONTrackReconstructor.cxx:397 AliMUONTrackReconstructor.cxx:398 AliMUONTrackReconstructor.cxx:399 AliMUONTrackReconstructor.cxx:400 AliMUONTrackReconstructor.cxx:401 AliMUONTrackReconstructor.cxx:402 AliMUONTrackReconstructor.cxx:403 AliMUONTrackReconstructor.cxx:404 AliMUONTrackReconstructor.cxx:405 AliMUONTrackReconstructor.cxx:406 AliMUONTrackReconstructor.cxx:407 AliMUONTrackReconstructor.cxx:408 AliMUONTrackReconstructor.cxx:409 AliMUONTrackReconstructor.cxx:410 AliMUONTrackReconstructor.cxx:411 AliMUONTrackReconstructor.cxx:412 AliMUONTrackReconstructor.cxx:413 AliMUONTrackReconstructor.cxx:414 AliMUONTrackReconstructor.cxx:415 AliMUONTrackReconstructor.cxx:416 AliMUONTrackReconstructor.cxx:417 AliMUONTrackReconstructor.cxx:418 AliMUONTrackReconstructor.cxx:419 AliMUONTrackReconstructor.cxx:420 AliMUONTrackReconstructor.cxx:421 AliMUONTrackReconstructor.cxx:422 AliMUONTrackReconstructor.cxx:423 AliMUONTrackReconstructor.cxx:424 AliMUONTrackReconstructor.cxx:425 AliMUONTrackReconstructor.cxx:426 AliMUONTrackReconstructor.cxx:427 AliMUONTrackReconstructor.cxx:428 AliMUONTrackReconstructor.cxx:429 AliMUONTrackReconstructor.cxx:430 AliMUONTrackReconstructor.cxx:431 AliMUONTrackReconstructor.cxx:432 AliMUONTrackReconstructor.cxx:433 AliMUONTrackReconstructor.cxx:434 AliMUONTrackReconstructor.cxx:435 AliMUONTrackReconstructor.cxx:436 AliMUONTrackReconstructor.cxx:437 AliMUONTrackReconstructor.cxx:438 AliMUONTrackReconstructor.cxx:439 AliMUONTrackReconstructor.cxx:440 AliMUONTrackReconstructor.cxx:441 AliMUONTrackReconstructor.cxx:442 AliMUONTrackReconstructor.cxx:443 AliMUONTrackReconstructor.cxx:444 AliMUONTrackReconstructor.cxx:445 AliMUONTrackReconstructor.cxx:446 AliMUONTrackReconstructor.cxx:447 AliMUONTrackReconstructor.cxx:448 AliMUONTrackReconstructor.cxx:449 AliMUONTrackReconstructor.cxx:450 AliMUONTrackReconstructor.cxx:451 AliMUONTrackReconstructor.cxx:452 AliMUONTrackReconstructor.cxx:453 AliMUONTrackReconstructor.cxx:454 AliMUONTrackReconstructor.cxx:455 AliMUONTrackReconstructor.cxx:456 AliMUONTrackReconstructor.cxx:457 AliMUONTrackReconstructor.cxx:458 AliMUONTrackReconstructor.cxx:459 AliMUONTrackReconstructor.cxx:460 AliMUONTrackReconstructor.cxx:461 AliMUONTrackReconstructor.cxx:462 AliMUONTrackReconstructor.cxx:463 AliMUONTrackReconstructor.cxx:464 AliMUONTrackReconstructor.cxx:465 AliMUONTrackReconstructor.cxx:466 AliMUONTrackReconstructor.cxx:467 AliMUONTrackReconstructor.cxx:468 AliMUONTrackReconstructor.cxx:469 AliMUONTrackReconstructor.cxx:470 AliMUONTrackReconstructor.cxx:471 AliMUONTrackReconstructor.cxx:472 AliMUONTrackReconstructor.cxx:473 AliMUONTrackReconstructor.cxx:474 AliMUONTrackReconstructor.cxx:475 AliMUONTrackReconstructor.cxx:476 AliMUONTrackReconstructor.cxx:477 AliMUONTrackReconstructor.cxx:478 AliMUONTrackReconstructor.cxx:479 AliMUONTrackReconstructor.cxx:480 AliMUONTrackReconstructor.cxx:481 AliMUONTrackReconstructor.cxx:482 AliMUONTrackReconstructor.cxx:483 AliMUONTrackReconstructor.cxx:484 AliMUONTrackReconstructor.cxx:485 AliMUONTrackReconstructor.cxx:486 AliMUONTrackReconstructor.cxx:487 AliMUONTrackReconstructor.cxx:488 AliMUONTrackReconstructor.cxx:489 AliMUONTrackReconstructor.cxx:490 AliMUONTrackReconstructor.cxx:491 AliMUONTrackReconstructor.cxx:492 AliMUONTrackReconstructor.cxx:493 AliMUONTrackReconstructor.cxx:494 AliMUONTrackReconstructor.cxx:495 AliMUONTrackReconstructor.cxx:496 AliMUONTrackReconstructor.cxx:497 AliMUONTrackReconstructor.cxx:498 AliMUONTrackReconstructor.cxx:499 AliMUONTrackReconstructor.cxx:500 AliMUONTrackReconstructor.cxx:501 AliMUONTrackReconstructor.cxx:502 AliMUONTrackReconstructor.cxx:503 AliMUONTrackReconstructor.cxx:504 AliMUONTrackReconstructor.cxx:505 AliMUONTrackReconstructor.cxx:506 AliMUONTrackReconstructor.cxx:507 AliMUONTrackReconstructor.cxx:508 AliMUONTrackReconstructor.cxx:509 AliMUONTrackReconstructor.cxx:510 AliMUONTrackReconstructor.cxx:511 AliMUONTrackReconstructor.cxx:512 AliMUONTrackReconstructor.cxx:513 AliMUONTrackReconstructor.cxx:514 AliMUONTrackReconstructor.cxx:515 AliMUONTrackReconstructor.cxx:516 AliMUONTrackReconstructor.cxx:517 AliMUONTrackReconstructor.cxx:518 AliMUONTrackReconstructor.cxx:519 AliMUONTrackReconstructor.cxx:520 AliMUONTrackReconstructor.cxx:521 AliMUONTrackReconstructor.cxx:522 AliMUONTrackReconstructor.cxx:523 AliMUONTrackReconstructor.cxx:524 AliMUONTrackReconstructor.cxx:525 AliMUONTrackReconstructor.cxx:526 AliMUONTrackReconstructor.cxx:527 AliMUONTrackReconstructor.cxx:528 AliMUONTrackReconstructor.cxx:529 AliMUONTrackReconstructor.cxx:530 AliMUONTrackReconstructor.cxx:531 AliMUONTrackReconstructor.cxx:532 AliMUONTrackReconstructor.cxx:533 AliMUONTrackReconstructor.cxx:534 AliMUONTrackReconstructor.cxx:535 AliMUONTrackReconstructor.cxx:536 AliMUONTrackReconstructor.cxx:537 AliMUONTrackReconstructor.cxx:538 AliMUONTrackReconstructor.cxx:539 AliMUONTrackReconstructor.cxx:540 AliMUONTrackReconstructor.cxx:541 AliMUONTrackReconstructor.cxx:542 AliMUONTrackReconstructor.cxx:543 AliMUONTrackReconstructor.cxx:544 AliMUONTrackReconstructor.cxx:545 AliMUONTrackReconstructor.cxx:546 AliMUONTrackReconstructor.cxx:547 AliMUONTrackReconstructor.cxx:548 AliMUONTrackReconstructor.cxx:549 AliMUONTrackReconstructor.cxx:550 AliMUONTrackReconstructor.cxx:551 AliMUONTrackReconstructor.cxx:552 AliMUONTrackReconstructor.cxx:553 AliMUONTrackReconstructor.cxx:554 AliMUONTrackReconstructor.cxx:555 AliMUONTrackReconstructor.cxx:556 AliMUONTrackReconstructor.cxx:557 AliMUONTrackReconstructor.cxx:558 AliMUONTrackReconstructor.cxx:559 AliMUONTrackReconstructor.cxx:560 AliMUONTrackReconstructor.cxx:561 AliMUONTrackReconstructor.cxx:562 AliMUONTrackReconstructor.cxx:563 AliMUONTrackReconstructor.cxx:564 AliMUONTrackReconstructor.cxx:565 AliMUONTrackReconstructor.cxx:566 AliMUONTrackReconstructor.cxx:567 AliMUONTrackReconstructor.cxx:568 AliMUONTrackReconstructor.cxx:569 AliMUONTrackReconstructor.cxx:570 AliMUONTrackReconstructor.cxx:571 AliMUONTrackReconstructor.cxx:572 AliMUONTrackReconstructor.cxx:573 AliMUONTrackReconstructor.cxx:574 AliMUONTrackReconstructor.cxx:575 AliMUONTrackReconstructor.cxx:576 AliMUONTrackReconstructor.cxx:577 AliMUONTrackReconstructor.cxx:578 AliMUONTrackReconstructor.cxx:579 AliMUONTrackReconstructor.cxx:580 AliMUONTrackReconstructor.cxx:581 AliMUONTrackReconstructor.cxx:582 AliMUONTrackReconstructor.cxx:583 AliMUONTrackReconstructor.cxx:584 AliMUONTrackReconstructor.cxx:585 AliMUONTrackReconstructor.cxx:586 AliMUONTrackReconstructor.cxx:587 AliMUONTrackReconstructor.cxx:588 AliMUONTrackReconstructor.cxx:589 AliMUONTrackReconstructor.cxx:590 AliMUONTrackReconstructor.cxx:591 AliMUONTrackReconstructor.cxx:592 AliMUONTrackReconstructor.cxx:593 AliMUONTrackReconstructor.cxx:594 AliMUONTrackReconstructor.cxx:595 AliMUONTrackReconstructor.cxx:596 AliMUONTrackReconstructor.cxx:597 AliMUONTrackReconstructor.cxx:598 AliMUONTrackReconstructor.cxx:599 AliMUONTrackReconstructor.cxx:600 AliMUONTrackReconstructor.cxx:601 AliMUONTrackReconstructor.cxx:602 AliMUONTrackReconstructor.cxx:603 AliMUONTrackReconstructor.cxx:604 AliMUONTrackReconstructor.cxx:605 AliMUONTrackReconstructor.cxx:606 AliMUONTrackReconstructor.cxx:607 AliMUONTrackReconstructor.cxx:608 AliMUONTrackReconstructor.cxx:609 AliMUONTrackReconstructor.cxx:610 AliMUONTrackReconstructor.cxx:611 AliMUONTrackReconstructor.cxx:612 AliMUONTrackReconstructor.cxx:613 AliMUONTrackReconstructor.cxx:614 AliMUONTrackReconstructor.cxx:615 AliMUONTrackReconstructor.cxx:616 AliMUONTrackReconstructor.cxx:617 AliMUONTrackReconstructor.cxx:618 AliMUONTrackReconstructor.cxx:619 AliMUONTrackReconstructor.cxx:620 AliMUONTrackReconstructor.cxx:621 AliMUONTrackReconstructor.cxx:622 AliMUONTrackReconstructor.cxx:623 AliMUONTrackReconstructor.cxx:624 AliMUONTrackReconstructor.cxx:625 AliMUONTrackReconstructor.cxx:626 AliMUONTrackReconstructor.cxx:627 AliMUONTrackReconstructor.cxx:628 AliMUONTrackReconstructor.cxx:629 AliMUONTrackReconstructor.cxx:630 AliMUONTrackReconstructor.cxx:631 AliMUONTrackReconstructor.cxx:632 AliMUONTrackReconstructor.cxx:633 AliMUONTrackReconstructor.cxx:634 AliMUONTrackReconstructor.cxx:635 AliMUONTrackReconstructor.cxx:636 AliMUONTrackReconstructor.cxx:637 AliMUONTrackReconstructor.cxx:638 AliMUONTrackReconstructor.cxx:639 AliMUONTrackReconstructor.cxx:640 AliMUONTrackReconstructor.cxx:641 AliMUONTrackReconstructor.cxx:642 AliMUONTrackReconstructor.cxx:643 AliMUONTrackReconstructor.cxx:644 AliMUONTrackReconstructor.cxx:645 AliMUONTrackReconstructor.cxx:646 AliMUONTrackReconstructor.cxx:647 AliMUONTrackReconstructor.cxx:648 AliMUONTrackReconstructor.cxx:649 AliMUONTrackReconstructor.cxx:650 AliMUONTrackReconstructor.cxx:651 AliMUONTrackReconstructor.cxx:652 AliMUONTrackReconstructor.cxx:653 AliMUONTrackReconstructor.cxx:654 AliMUONTrackReconstructor.cxx:655 AliMUONTrackReconstructor.cxx:656 AliMUONTrackReconstructor.cxx:657 AliMUONTrackReconstructor.cxx:658 AliMUONTrackReconstructor.cxx:659 AliMUONTrackReconstructor.cxx:660 AliMUONTrackReconstructor.cxx:661 AliMUONTrackReconstructor.cxx:662 AliMUONTrackReconstructor.cxx:663 AliMUONTrackReconstructor.cxx:664 AliMUONTrackReconstructor.cxx:665 AliMUONTrackReconstructor.cxx:666 AliMUONTrackReconstructor.cxx:667 AliMUONTrackReconstructor.cxx:668 AliMUONTrackReconstructor.cxx:669 AliMUONTrackReconstructor.cxx:670 AliMUONTrackReconstructor.cxx:671 AliMUONTrackReconstructor.cxx:672 AliMUONTrackReconstructor.cxx:673 AliMUONTrackReconstructor.cxx:674 AliMUONTrackReconstructor.cxx:675 AliMUONTrackReconstructor.cxx:676 AliMUONTrackReconstructor.cxx:677 AliMUONTrackReconstructor.cxx:678 AliMUONTrackReconstructor.cxx:679 AliMUONTrackReconstructor.cxx:680 AliMUONTrackReconstructor.cxx:681 AliMUONTrackReconstructor.cxx:682 AliMUONTrackReconstructor.cxx:683 AliMUONTrackReconstructor.cxx:684 AliMUONTrackReconstructor.cxx:685 AliMUONTrackReconstructor.cxx:686 AliMUONTrackReconstructor.cxx:687 AliMUONTrackReconstructor.cxx:688 AliMUONTrackReconstructor.cxx:689 AliMUONTrackReconstructor.cxx:690 AliMUONTrackReconstructor.cxx:691 AliMUONTrackReconstructor.cxx:692 AliMUONTrackReconstructor.cxx:693 AliMUONTrackReconstructor.cxx:694 AliMUONTrackReconstructor.cxx:695 AliMUONTrackReconstructor.cxx:696 AliMUONTrackReconstructor.cxx:697 AliMUONTrackReconstructor.cxx:698 AliMUONTrackReconstructor.cxx:699 AliMUONTrackReconstructor.cxx:700 AliMUONTrackReconstructor.cxx:701 AliMUONTrackReconstructor.cxx:702 AliMUONTrackReconstructor.cxx:703 AliMUONTrackReconstructor.cxx:704 AliMUONTrackReconstructor.cxx:705 AliMUONTrackReconstructor.cxx:706 AliMUONTrackReconstructor.cxx:707 AliMUONTrackReconstructor.cxx:708 AliMUONTrackReconstructor.cxx:709 AliMUONTrackReconstructor.cxx:710 AliMUONTrackReconstructor.cxx:711 AliMUONTrackReconstructor.cxx:712 AliMUONTrackReconstructor.cxx:713 AliMUONTrackReconstructor.cxx:714 AliMUONTrackReconstructor.cxx:715 AliMUONTrackReconstructor.cxx:716 AliMUONTrackReconstructor.cxx:717 AliMUONTrackReconstructor.cxx:718 AliMUONTrackReconstructor.cxx:719 AliMUONTrackReconstructor.cxx:720 AliMUONTrackReconstructor.cxx:721 AliMUONTrackReconstructor.cxx:722 AliMUONTrackReconstructor.cxx:723 AliMUONTrackReconstructor.cxx:724 AliMUONTrackReconstructor.cxx:725 AliMUONTrackReconstructor.cxx:726 AliMUONTrackReconstructor.cxx:727 AliMUONTrackReconstructor.cxx:728 AliMUONTrackReconstructor.cxx:729 AliMUONTrackReconstructor.cxx:730 AliMUONTrackReconstructor.cxx:731 AliMUONTrackReconstructor.cxx:732 AliMUONTrackReconstructor.cxx:733 AliMUONTrackReconstructor.cxx:734 AliMUONTrackReconstructor.cxx:735 AliMUONTrackReconstructor.cxx:736 AliMUONTrackReconstructor.cxx:737 AliMUONTrackReconstructor.cxx:738 AliMUONTrackReconstructor.cxx:739 AliMUONTrackReconstructor.cxx:740 AliMUONTrackReconstructor.cxx:741 AliMUONTrackReconstructor.cxx:742 AliMUONTrackReconstructor.cxx:743 AliMUONTrackReconstructor.cxx:744 AliMUONTrackReconstructor.cxx:745 AliMUONTrackReconstructor.cxx:746 AliMUONTrackReconstructor.cxx:747 AliMUONTrackReconstructor.cxx:748 AliMUONTrackReconstructor.cxx:749 AliMUONTrackReconstructor.cxx:750 AliMUONTrackReconstructor.cxx:751 AliMUONTrackReconstructor.cxx:752 AliMUONTrackReconstructor.cxx:753 AliMUONTrackReconstructor.cxx:754 AliMUONTrackReconstructor.cxx:755 AliMUONTrackReconstructor.cxx:756 AliMUONTrackReconstructor.cxx:757 AliMUONTrackReconstructor.cxx:758 AliMUONTrackReconstructor.cxx:759 AliMUONTrackReconstructor.cxx:760 AliMUONTrackReconstructor.cxx:761 AliMUONTrackReconstructor.cxx:762 AliMUONTrackReconstructor.cxx:763 AliMUONTrackReconstructor.cxx:764 AliMUONTrackReconstructor.cxx:765 AliMUONTrackReconstructor.cxx:766 AliMUONTrackReconstructor.cxx:767 AliMUONTrackReconstructor.cxx:768 AliMUONTrackReconstructor.cxx:769 AliMUONTrackReconstructor.cxx:770 AliMUONTrackReconstructor.cxx:771 AliMUONTrackReconstructor.cxx:772 AliMUONTrackReconstructor.cxx:773 AliMUONTrackReconstructor.cxx:774 AliMUONTrackReconstructor.cxx:775 AliMUONTrackReconstructor.cxx:776 AliMUONTrackReconstructor.cxx:777 AliMUONTrackReconstructor.cxx:778 AliMUONTrackReconstructor.cxx:779 AliMUONTrackReconstructor.cxx:780 AliMUONTrackReconstructor.cxx:781 AliMUONTrackReconstructor.cxx:782 AliMUONTrackReconstructor.cxx:783 AliMUONTrackReconstructor.cxx:784 AliMUONTrackReconstructor.cxx:785 AliMUONTrackReconstructor.cxx:786 AliMUONTrackReconstructor.cxx:787 AliMUONTrackReconstructor.cxx:788 AliMUONTrackReconstructor.cxx:789 AliMUONTrackReconstructor.cxx:790 AliMUONTrackReconstructor.cxx:791 AliMUONTrackReconstructor.cxx:792 AliMUONTrackReconstructor.cxx:793 AliMUONTrackReconstructor.cxx:794 AliMUONTrackReconstructor.cxx:795 AliMUONTrackReconstructor.cxx:796 AliMUONTrackReconstructor.cxx:797 AliMUONTrackReconstructor.cxx:798 AliMUONTrackReconstructor.cxx:799 AliMUONTrackReconstructor.cxx:800 AliMUONTrackReconstructor.cxx:801 AliMUONTrackReconstructor.cxx:802 AliMUONTrackReconstructor.cxx:803 AliMUONTrackReconstructor.cxx:804 AliMUONTrackReconstructor.cxx:805 AliMUONTrackReconstructor.cxx:806 AliMUONTrackReconstructor.cxx:807 AliMUONTrackReconstructor.cxx:808 AliMUONTrackReconstructor.cxx:809 AliMUONTrackReconstructor.cxx:810 AliMUONTrackReconstructor.cxx:811 AliMUONTrackReconstructor.cxx:812 AliMUONTrackReconstructor.cxx:813 AliMUONTrackReconstructor.cxx:814 AliMUONTrackReconstructor.cxx:815 AliMUONTrackReconstructor.cxx:816 AliMUONTrackReconstructor.cxx:817 AliMUONTrackReconstructor.cxx:818 AliMUONTrackReconstructor.cxx:819 AliMUONTrackReconstructor.cxx:820 AliMUONTrackReconstructor.cxx:821 AliMUONTrackReconstructor.cxx:822 AliMUONTrackReconstructor.cxx:823 AliMUONTrackReconstructor.cxx:824 AliMUONTrackReconstructor.cxx:825 AliMUONTrackReconstructor.cxx:826 AliMUONTrackReconstructor.cxx:827 AliMUONTrackReconstructor.cxx:828 AliMUONTrackReconstructor.cxx:829 AliMUONTrackReconstructor.cxx:830 AliMUONTrackReconstructor.cxx:831 AliMUONTrackReconstructor.cxx:832 AliMUONTrackReconstructor.cxx:833 AliMUONTrackReconstructor.cxx:834 AliMUONTrackReconstructor.cxx:835 AliMUONTrackReconstructor.cxx:836 AliMUONTrackReconstructor.cxx:837 AliMUONTrackReconstructor.cxx:838 AliMUONTrackReconstructor.cxx:839 AliMUONTrackReconstructor.cxx:840 AliMUONTrackReconstructor.cxx:841 AliMUONTrackReconstructor.cxx:842 AliMUONTrackReconstructor.cxx:843 AliMUONTrackReconstructor.cxx:844 AliMUONTrackReconstructor.cxx:845 AliMUONTrackReconstructor.cxx:846 AliMUONTrackReconstructor.cxx:847 AliMUONTrackReconstructor.cxx:848 AliMUONTrackReconstructor.cxx:849 AliMUONTrackReconstructor.cxx:850 AliMUONTrackReconstructor.cxx:851 AliMUONTrackReconstructor.cxx:852 AliMUONTrackReconstructor.cxx:853 AliMUONTrackReconstructor.cxx:854 AliMUONTrackReconstructor.cxx:855 AliMUONTrackReconstructor.cxx:856 AliMUONTrackReconstructor.cxx:857 AliMUONTrackReconstructor.cxx:858 AliMUONTrackReconstructor.cxx:859 AliMUONTrackReconstructor.cxx:860 AliMUONTrackReconstructor.cxx:861 AliMUONTrackReconstructor.cxx:862 AliMUONTrackReconstructor.cxx:863 AliMUONTrackReconstructor.cxx:864 AliMUONTrackReconstructor.cxx:865 AliMUONTrackReconstructor.cxx:866 AliMUONTrackReconstructor.cxx:867 AliMUONTrackReconstructor.cxx:868 AliMUONTrackReconstructor.cxx:869 AliMUONTrackReconstructor.cxx:870 AliMUONTrackReconstructor.cxx:871 AliMUONTrackReconstructor.cxx:872 AliMUONTrackReconstructor.cxx:873 AliMUONTrackReconstructor.cxx:874 AliMUONTrackReconstructor.cxx:875 AliMUONTrackReconstructor.cxx:876 AliMUONTrackReconstructor.cxx:877 AliMUONTrackReconstructor.cxx:878 AliMUONTrackReconstructor.cxx:879 AliMUONTrackReconstructor.cxx:880 AliMUONTrackReconstructor.cxx:881 AliMUONTrackReconstructor.cxx:882 AliMUONTrackReconstructor.cxx:883 AliMUONTrackReconstructor.cxx:884 AliMUONTrackReconstructor.cxx:885 AliMUONTrackReconstructor.cxx:886 AliMUONTrackReconstructor.cxx:887 AliMUONTrackReconstructor.cxx:888 AliMUONTrackReconstructor.cxx:889 AliMUONTrackReconstructor.cxx:890 AliMUONTrackReconstructor.cxx:891 AliMUONTrackReconstructor.cxx:892 AliMUONTrackReconstructor.cxx:893 AliMUONTrackReconstructor.cxx:894 AliMUONTrackReconstructor.cxx:895 AliMUONTrackReconstructor.cxx:896 AliMUONTrackReconstructor.cxx:897 AliMUONTrackReconstructor.cxx:898 AliMUONTrackReconstructor.cxx:899 AliMUONTrackReconstructor.cxx:900 AliMUONTrackReconstructor.cxx:901 AliMUONTrackReconstructor.cxx:902 AliMUONTrackReconstructor.cxx:903 AliMUONTrackReconstructor.cxx:904 AliMUONTrackReconstructor.cxx:905 AliMUONTrackReconstructor.cxx:906 AliMUONTrackReconstructor.cxx:907 AliMUONTrackReconstructor.cxx:908 AliMUONTrackReconstructor.cxx:909 AliMUONTrackReconstructor.cxx:910 AliMUONTrackReconstructor.cxx:911 AliMUONTrackReconstructor.cxx:912 AliMUONTrackReconstructor.cxx:913 AliMUONTrackReconstructor.cxx:914 AliMUONTrackReconstructor.cxx:915 AliMUONTrackReconstructor.cxx:916 AliMUONTrackReconstructor.cxx:917 AliMUONTrackReconstructor.cxx:918 AliMUONTrackReconstructor.cxx:919 AliMUONTrackReconstructor.cxx:920 AliMUONTrackReconstructor.cxx:921 AliMUONTrackReconstructor.cxx:922 AliMUONTrackReconstructor.cxx:923 AliMUONTrackReconstructor.cxx:924 AliMUONTrackReconstructor.cxx:925 AliMUONTrackReconstructor.cxx:926 AliMUONTrackReconstructor.cxx:927 AliMUONTrackReconstructor.cxx:928 AliMUONTrackReconstructor.cxx:929 AliMUONTrackReconstructor.cxx:930 AliMUONTrackReconstructor.cxx:931 AliMUONTrackReconstructor.cxx:932 AliMUONTrackReconstructor.cxx:933 AliMUONTrackReconstructor.cxx:934 AliMUONTrackReconstructor.cxx:935 AliMUONTrackReconstructor.cxx:936 AliMUONTrackReconstructor.cxx:937 AliMUONTrackReconstructor.cxx:938 AliMUONTrackReconstructor.cxx:939 AliMUONTrackReconstructor.cxx:940 AliMUONTrackReconstructor.cxx:941 AliMUONTrackReconstructor.cxx:942 AliMUONTrackReconstructor.cxx:943 AliMUONTrackReconstructor.cxx:944 AliMUONTrackReconstructor.cxx:945 AliMUONTrackReconstructor.cxx:946 AliMUONTrackReconstructor.cxx:947 AliMUONTrackReconstructor.cxx:948 AliMUONTrackReconstructor.cxx:949 AliMUONTrackReconstructor.cxx:950 AliMUONTrackReconstructor.cxx:951 AliMUONTrackReconstructor.cxx:952 AliMUONTrackReconstructor.cxx:953 AliMUONTrackReconstructor.cxx:954 AliMUONTrackReconstructor.cxx:955 AliMUONTrackReconstructor.cxx:956 AliMUONTrackReconstructor.cxx:957 AliMUONTrackReconstructor.cxx:958 AliMUONTrackReconstructor.cxx:959 AliMUONTrackReconstructor.cxx:960 AliMUONTrackReconstructor.cxx:961 AliMUONTrackReconstructor.cxx:962 AliMUONTrackReconstructor.cxx:963 AliMUONTrackReconstructor.cxx:964 AliMUONTrackReconstructor.cxx:965 AliMUONTrackReconstructor.cxx:966 AliMUONTrackReconstructor.cxx:967 AliMUONTrackReconstructor.cxx:968 AliMUONTrackReconstructor.cxx:969 AliMUONTrackReconstructor.cxx:970 AliMUONTrackReconstructor.cxx:971 AliMUONTrackReconstructor.cxx:972 AliMUONTrackReconstructor.cxx:973 AliMUONTrackReconstructor.cxx:974 AliMUONTrackReconstructor.cxx:975 AliMUONTrackReconstructor.cxx:976 AliMUONTrackReconstructor.cxx:977 AliMUONTrackReconstructor.cxx:978 AliMUONTrackReconstructor.cxx:979 AliMUONTrackReconstructor.cxx:980 AliMUONTrackReconstructor.cxx:981 AliMUONTrackReconstructor.cxx:982 AliMUONTrackReconstructor.cxx:983 AliMUONTrackReconstructor.cxx:984 AliMUONTrackReconstructor.cxx:985 AliMUONTrackReconstructor.cxx:986 AliMUONTrackReconstructor.cxx:987 AliMUONTrackReconstructor.cxx:988 AliMUONTrackReconstructor.cxx:989 AliMUONTrackReconstructor.cxx:990 AliMUONTrackReconstructor.cxx:991 AliMUONTrackReconstructor.cxx:992 AliMUONTrackReconstructor.cxx:993 AliMUONTrackReconstructor.cxx:994 AliMUONTrackReconstructor.cxx:995 AliMUONTrackReconstructor.cxx:996 AliMUONTrackReconstructor.cxx:997 AliMUONTrackReconstructor.cxx:998 AliMUONTrackReconstructor.cxx:999 AliMUONTrackReconstructor.cxx:1000 AliMUONTrackReconstructor.cxx:1001 AliMUONTrackReconstructor.cxx:1002 AliMUONTrackReconstructor.cxx:1003 AliMUONTrackReconstructor.cxx:1004 AliMUONTrackReconstructor.cxx:1005 AliMUONTrackReconstructor.cxx:1006 AliMUONTrackReconstructor.cxx:1007 AliMUONTrackReconstructor.cxx:1008 AliMUONTrackReconstructor.cxx:1009 AliMUONTrackReconstructor.cxx:1010 AliMUONTrackReconstructor.cxx:1011 AliMUONTrackReconstructor.cxx:1012 AliMUONTrackReconstructor.cxx:1013 AliMUONTrackReconstructor.cxx:1014 AliMUONTrackReconstructor.cxx:1015 AliMUONTrackReconstructor.cxx:1016 AliMUONTrackReconstructor.cxx:1017 AliMUONTrackReconstructor.cxx:1018 AliMUONTrackReconstructor.cxx:1019 AliMUONTrackReconstructor.cxx:1020 AliMUONTrackReconstructor.cxx:1021 AliMUONTrackReconstructor.cxx:1022 AliMUONTrackReconstructor.cxx:1023 AliMUONTrackReconstructor.cxx:1024 AliMUONTrackReconstructor.cxx:1025 AliMUONTrackReconstructor.cxx:1026 AliMUONTrackReconstructor.cxx:1027 AliMUONTrackReconstructor.cxx:1028 AliMUONTrackReconstructor.cxx:1029 AliMUONTrackReconstructor.cxx:1030 AliMUONTrackReconstructor.cxx:1031 AliMUONTrackReconstructor.cxx:1032 AliMUONTrackReconstructor.cxx:1033 AliMUONTrackReconstructor.cxx:1034 AliMUONTrackReconstructor.cxx:1035 AliMUONTrackReconstructor.cxx:1036 AliMUONTrackReconstructor.cxx:1037 AliMUONTrackReconstructor.cxx:1038 AliMUONTrackReconstructor.cxx:1039 AliMUONTrackReconstructor.cxx:1040 AliMUONTrackReconstructor.cxx:1041 AliMUONTrackReconstructor.cxx:1042 AliMUONTrackReconstructor.cxx:1043 AliMUONTrackReconstructor.cxx:1044 AliMUONTrackReconstructor.cxx:1045 AliMUONTrackReconstructor.cxx:1046 AliMUONTrackReconstructor.cxx:1047 AliMUONTrackReconstructor.cxx:1048 AliMUONTrackReconstructor.cxx:1049 AliMUONTrackReconstructor.cxx:1050 AliMUONTrackReconstructor.cxx:1051 AliMUONTrackReconstructor.cxx:1052 AliMUONTrackReconstructor.cxx:1053 AliMUONTrackReconstructor.cxx:1054 AliMUONTrackReconstructor.cxx:1055 AliMUONTrackReconstructor.cxx:1056 AliMUONTrackReconstructor.cxx:1057 AliMUONTrackReconstructor.cxx:1058 AliMUONTrackReconstructor.cxx:1059 AliMUONTrackReconstructor.cxx:1060 AliMUONTrackReconstructor.cxx:1061 AliMUONTrackReconstructor.cxx:1062 AliMUONTrackReconstructor.cxx:1063 AliMUONTrackReconstructor.cxx:1064 AliMUONTrackReconstructor.cxx:1065 AliMUONTrackReconstructor.cxx:1066 AliMUONTrackReconstructor.cxx:1067 AliMUONTrackReconstructor.cxx:1068 AliMUONTrackReconstructor.cxx:1069 AliMUONTrackReconstructor.cxx:1070 AliMUONTrackReconstructor.cxx:1071 AliMUONTrackReconstructor.cxx:1072 AliMUONTrackReconstructor.cxx:1073 AliMUONTrackReconstructor.cxx:1074 AliMUONTrackReconstructor.cxx:1075 AliMUONTrackReconstructor.cxx:1076 AliMUONTrackReconstructor.cxx:1077 AliMUONTrackReconstructor.cxx:1078 AliMUONTrackReconstructor.cxx:1079 AliMUONTrackReconstructor.cxx:1080 AliMUONTrackReconstructor.cxx:1081 AliMUONTrackReconstructor.cxx:1082 AliMUONTrackReconstructor.cxx:1083 AliMUONTrackReconstructor.cxx:1084 AliMUONTrackReconstructor.cxx:1085 AliMUONTrackReconstructor.cxx:1086 AliMUONTrackReconstructor.cxx:1087 AliMUONTrackReconstructor.cxx:1088 AliMUONTrackReconstructor.cxx:1089 AliMUONTrackReconstructor.cxx:1090 AliMUONTrackReconstructor.cxx:1091 AliMUONTrackReconstructor.cxx:1092 AliMUONTrackReconstructor.cxx:1093 AliMUONTrackReconstructor.cxx:1094 AliMUONTrackReconstructor.cxx:1095 AliMUONTrackReconstructor.cxx:1096 AliMUONTrackReconstructor.cxx:1097 AliMUONTrackReconstructor.cxx:1098 AliMUONTrackReconstructor.cxx:1099 AliMUONTrackReconstructor.cxx:1100 AliMUONTrackReconstructor.cxx:1101 AliMUONTrackReconstructor.cxx:1102 AliMUONTrackReconstructor.cxx:1103 AliMUONTrackReconstructor.cxx:1104 AliMUONTrackReconstructor.cxx:1105 AliMUONTrackReconstructor.cxx:1106 AliMUONTrackReconstructor.cxx:1107 AliMUONTrackReconstructor.cxx:1108 AliMUONTrackReconstructor.cxx:1109 AliMUONTrackReconstructor.cxx:1110 AliMUONTrackReconstructor.cxx:1111 AliMUONTrackReconstructor.cxx:1112 AliMUONTrackReconstructor.cxx:1113 AliMUONTrackReconstructor.cxx:1114 AliMUONTrackReconstructor.cxx:1115 AliMUONTrackReconstructor.cxx:1116 AliMUONTrackReconstructor.cxx:1117 AliMUONTrackReconstructor.cxx:1118 AliMUONTrackReconstructor.cxx:1119 AliMUONTrackReconstructor.cxx:1120 AliMUONTrackReconstructor.cxx:1121 AliMUONTrackReconstructor.cxx:1122 AliMUONTrackReconstructor.cxx:1123 AliMUONTrackReconstructor.cxx:1124 AliMUONTrackReconstructor.cxx:1125 AliMUONTrackReconstructor.cxx:1126 AliMUONTrackReconstructor.cxx:1127 AliMUONTrackReconstructor.cxx:1128 AliMUONTrackReconstructor.cxx:1129 AliMUONTrackReconstructor.cxx:1130 AliMUONTrackReconstructor.cxx:1131 AliMUONTrackReconstructor.cxx:1132 AliMUONTrackReconstructor.cxx:1133 AliMUONTrackReconstructor.cxx:1134 AliMUONTrackReconstructor.cxx:1135 AliMUONTrackReconstructor.cxx:1136 AliMUONTrackReconstructor.cxx:1137 AliMUONTrackReconstructor.cxx:1138 AliMUONTrackReconstructor.cxx:1139 AliMUONTrackReconstructor.cxx:1140 AliMUONTrackReconstructor.cxx:1141 AliMUONTrackReconstructor.cxx:1142 AliMUONTrackReconstructor.cxx:1143 AliMUONTrackReconstructor.cxx:1144 AliMUONTrackReconstructor.cxx:1145 AliMUONTrackReconstructor.cxx:1146 AliMUONTrackReconstructor.cxx:1147 AliMUONTrackReconstructor.cxx:1148 AliMUONTrackReconstructor.cxx:1149 AliMUONTrackReconstructor.cxx:1150 AliMUONTrackReconstructor.cxx:1151 AliMUONTrackReconstructor.cxx:1152 AliMUONTrackReconstructor.cxx:1153 AliMUONTrackReconstructor.cxx:1154 AliMUONTrackReconstructor.cxx:1155 AliMUONTrackReconstructor.cxx:1156 AliMUONTrackReconstructor.cxx:1157 AliMUONTrackReconstructor.cxx:1158 AliMUONTrackReconstructor.cxx:1159 AliMUONTrackReconstructor.cxx:1160 AliMUONTrackReconstructor.cxx:1161 AliMUONTrackReconstructor.cxx:1162 AliMUONTrackReconstructor.cxx:1163 AliMUONTrackReconstructor.cxx:1164 AliMUONTrackReconstructor.cxx:1165 AliMUONTrackReconstructor.cxx:1166 AliMUONTrackReconstructor.cxx:1167 AliMUONTrackReconstructor.cxx:1168 AliMUONTrackReconstructor.cxx:1169 AliMUONTrackReconstructor.cxx:1170 AliMUONTrackReconstructor.cxx:1171 AliMUONTrackReconstructor.cxx:1172 AliMUONTrackReconstructor.cxx:1173 AliMUONTrackReconstructor.cxx:1174 AliMUONTrackReconstructor.cxx:1175 AliMUONTrackReconstructor.cxx:1176 AliMUONTrackReconstructor.cxx:1177 AliMUONTrackReconstructor.cxx:1178 AliMUONTrackReconstructor.cxx:1179 AliMUONTrackReconstructor.cxx:1180 AliMUONTrackReconstructor.cxx:1181 AliMUONTrackReconstructor.cxx:1182 AliMUONTrackReconstructor.cxx:1183 AliMUONTrackReconstructor.cxx:1184 AliMUONTrackReconstructor.cxx:1185 AliMUONTrackReconstructor.cxx:1186 AliMUONTrackReconstructor.cxx:1187 AliMUONTrackReconstructor.cxx:1188 AliMUONTrackReconstructor.cxx:1189 AliMUONTrackReconstructor.cxx:1190 AliMUONTrackReconstructor.cxx:1191 AliMUONTrackReconstructor.cxx:1192 AliMUONTrackReconstructor.cxx:1193 AliMUONTrackReconstructor.cxx:1194 AliMUONTrackReconstructor.cxx:1195 AliMUONTrackReconstructor.cxx:1196 AliMUONTrackReconstructor.cxx:1197 AliMUONTrackReconstructor.cxx:1198 AliMUONTrackReconstructor.cxx:1199 AliMUONTrackReconstructor.cxx:1200 AliMUONTrackReconstructor.cxx:1201 AliMUONTrackReconstructor.cxx:1202 AliMUONTrackReconstructor.cxx:1203 AliMUONTrackReconstructor.cxx:1204 AliMUONTrackReconstructor.cxx:1205 AliMUONTrackReconstructor.cxx:1206 AliMUONTrackReconstructor.cxx:1207 AliMUONTrackReconstructor.cxx:1208 AliMUONTrackReconstructor.cxx:1209 AliMUONTrackReconstructor.cxx:1210 AliMUONTrackReconstructor.cxx:1211 AliMUONTrackReconstructor.cxx:1212 AliMUONTrackReconstructor.cxx:1213 AliMUONTrackReconstructor.cxx:1214 AliMUONTrackReconstructor.cxx:1215 AliMUONTrackReconstructor.cxx:1216 AliMUONTrackReconstructor.cxx:1217 AliMUONTrackReconstructor.cxx:1218 AliMUONTrackReconstructor.cxx:1219 AliMUONTrackReconstructor.cxx:1220 AliMUONTrackReconstructor.cxx:1221 AliMUONTrackReconstructor.cxx:1222 AliMUONTrackReconstructor.cxx:1223 AliMUONTrackReconstructor.cxx:1224 AliMUONTrackReconstructor.cxx:1225 AliMUONTrackReconstructor.cxx:1226 AliMUONTrackReconstructor.cxx:1227 AliMUONTrackReconstructor.cxx:1228 AliMUONTrackReconstructor.cxx:1229 AliMUONTrackReconstructor.cxx:1230 AliMUONTrackReconstructor.cxx:1231 AliMUONTrackReconstructor.cxx:1232 AliMUONTrackReconstructor.cxx:1233 AliMUONTrackReconstructor.cxx:1234 AliMUONTrackReconstructor.cxx:1235 AliMUONTrackReconstructor.cxx:1236 AliMUONTrackReconstructor.cxx:1237 AliMUONTrackReconstructor.cxx:1238 AliMUONTrackReconstructor.cxx:1239 AliMUONTrackReconstructor.cxx:1240 AliMUONTrackReconstructor.cxx:1241 AliMUONTrackReconstructor.cxx:1242 AliMUONTrackReconstructor.cxx:1243 AliMUONTrackReconstructor.cxx:1244 AliMUONTrackReconstructor.cxx:1245 AliMUONTrackReconstructor.cxx:1246 AliMUONTrackReconstructor.cxx:1247 AliMUONTrackReconstructor.cxx:1248 AliMUONTrackReconstructor.cxx:1249 AliMUONTrackReconstructor.cxx:1250 AliMUONTrackReconstructor.cxx:1251 AliMUONTrackReconstructor.cxx:1252 AliMUONTrackReconstructor.cxx:1253 AliMUONTrackReconstructor.cxx:1254 AliMUONTrackReconstructor.cxx:1255 AliMUONTrackReconstructor.cxx:1256 AliMUONTrackReconstructor.cxx:1257 AliMUONTrackReconstructor.cxx:1258 AliMUONTrackReconstructor.cxx:1259 AliMUONTrackReconstructor.cxx:1260 AliMUONTrackReconstructor.cxx:1261 AliMUONTrackReconstructor.cxx:1262 AliMUONTrackReconstructor.cxx:1263 AliMUONTrackReconstructor.cxx:1264 AliMUONTrackReconstructor.cxx:1265 AliMUONTrackReconstructor.cxx:1266 AliMUONTrackReconstructor.cxx:1267 AliMUONTrackReconstructor.cxx:1268 AliMUONTrackReconstructor.cxx:1269 AliMUONTrackReconstructor.cxx:1270 AliMUONTrackReconstructor.cxx:1271 AliMUONTrackReconstructor.cxx:1272 AliMUONTrackReconstructor.cxx:1273 AliMUONTrackReconstructor.cxx:1274 AliMUONTrackReconstructor.cxx:1275 AliMUONTrackReconstructor.cxx:1276 AliMUONTrackReconstructor.cxx:1277 AliMUONTrackReconstructor.cxx:1278 AliMUONTrackReconstructor.cxx:1279 AliMUONTrackReconstructor.cxx:1280 AliMUONTrackReconstructor.cxx:1281 AliMUONTrackReconstructor.cxx:1282 AliMUONTrackReconstructor.cxx:1283 AliMUONTrackReconstructor.cxx:1284 AliMUONTrackReconstructor.cxx:1285 AliMUONTrackReconstructor.cxx:1286 AliMUONTrackReconstructor.cxx:1287 AliMUONTrackReconstructor.cxx:1288 AliMUONTrackReconstructor.cxx:1289 AliMUONTrackReconstructor.cxx:1290 AliMUONTrackReconstructor.cxx:1291 AliMUONTrackReconstructor.cxx:1292 AliMUONTrackReconstructor.cxx:1293 AliMUONTrackReconstructor.cxx:1294 AliMUONTrackReconstructor.cxx:1295 AliMUONTrackReconstructor.cxx:1296 AliMUONTrackReconstructor.cxx:1297 AliMUONTrackReconstructor.cxx:1298 AliMUONTrackReconstructor.cxx:1299 AliMUONTrackReconstructor.cxx:1300 AliMUONTrackReconstructor.cxx:1301 AliMUONTrackReconstructor.cxx:1302 AliMUONTrackReconstructor.cxx:1303 AliMUONTrackReconstructor.cxx:1304 AliMUONTrackReconstructor.cxx:1305 AliMUONTrackReconstructor.cxx:1306 AliMUONTrackReconstructor.cxx:1307 AliMUONTrackReconstructor.cxx:1308 AliMUONTrackReconstructor.cxx:1309 AliMUONTrackReconstructor.cxx:1310 AliMUONTrackReconstructor.cxx:1311 AliMUONTrackReconstructor.cxx:1312 AliMUONTrackReconstructor.cxx:1313 AliMUONTrackReconstructor.cxx:1314 AliMUONTrackReconstructor.cxx:1315 AliMUONTrackReconstructor.cxx:1316 AliMUONTrackReconstructor.cxx:1317 AliMUONTrackReconstructor.cxx:1318 AliMUONTrackReconstructor.cxx:1319 AliMUONTrackReconstructor.cxx:1320 AliMUONTrackReconstructor.cxx:1321 AliMUONTrackReconstructor.cxx:1322 AliMUONTrackReconstructor.cxx:1323 AliMUONTrackReconstructor.cxx:1324 AliMUONTrackReconstructor.cxx:1325 AliMUONTrackReconstructor.cxx:1326 AliMUONTrackReconstructor.cxx:1327 AliMUONTrackReconstructor.cxx:1328 AliMUONTrackReconstructor.cxx:1329 AliMUONTrackReconstructor.cxx:1330 AliMUONTrackReconstructor.cxx:1331 AliMUONTrackReconstructor.cxx:1332 AliMUONTrackReconstructor.cxx:1333 AliMUONTrackReconstructor.cxx:1334 AliMUONTrackReconstructor.cxx:1335 AliMUONTrackReconstructor.cxx:1336 AliMUONTrackReconstructor.cxx:1337 AliMUONTrackReconstructor.cxx:1338 AliMUONTrackReconstructor.cxx:1339 AliMUONTrackReconstructor.cxx:1340 AliMUONTrackReconstructor.cxx:1341 AliMUONTrackReconstructor.cxx:1342 AliMUONTrackReconstructor.cxx:1343 AliMUONTrackReconstructor.cxx:1344 AliMUONTrackReconstructor.cxx:1345 AliMUONTrackReconstructor.cxx:1346 AliMUONTrackReconstructor.cxx:1347 AliMUONTrackReconstructor.cxx:1348 AliMUONTrackReconstructor.cxx:1349 AliMUONTrackReconstructor.cxx:1350 AliMUONTrackReconstructor.cxx:1351 AliMUONTrackReconstructor.cxx:1352 AliMUONTrackReconstructor.cxx:1353 AliMUONTrackReconstructor.cxx:1354 AliMUONTrackReconstructor.cxx:1355 AliMUONTrackReconstructor.cxx:1356 AliMUONTrackReconstructor.cxx:1357 AliMUONTrackReconstructor.cxx:1358 AliMUONTrackReconstructor.cxx:1359 AliMUONTrackReconstructor.cxx:1360 AliMUONTrackReconstructor.cxx:1361 AliMUONTrackReconstructor.cxx:1362 AliMUONTrackReconstructor.cxx:1363 AliMUONTrackReconstructor.cxx:1364 AliMUONTrackReconstructor.cxx:1365 AliMUONTrackReconstructor.cxx:1366 AliMUONTrackReconstructor.cxx:1367 AliMUONTrackReconstructor.cxx:1368 AliMUONTrackReconstructor.cxx:1369 AliMUONTrackReconstructor.cxx:1370 AliMUONTrackReconstructor.cxx:1371 AliMUONTrackReconstructor.cxx:1372 AliMUONTrackReconstructor.cxx:1373 AliMUONTrackReconstructor.cxx:1374 AliMUONTrackReconstructor.cxx:1375 AliMUONTrackReconstructor.cxx:1376 AliMUONTrackReconstructor.cxx:1377 AliMUONTrackReconstructor.cxx:1378 AliMUONTrackReconstructor.cxx:1379 AliMUONTrackReconstructor.cxx:1380 AliMUONTrackReconstructor.cxx:1381 AliMUONTrackReconstructor.cxx:1382 AliMUONTrackReconstructor.cxx:1383 AliMUONTrackReconstructor.cxx:1384 AliMUONTrackReconstructor.cxx:1385 AliMUONTrackReconstructor.cxx:1386 AliMUONTrackReconstructor.cxx:1387 AliMUONTrackReconstructor.cxx:1388 AliMUONTrackReconstructor.cxx:1389 AliMUONTrackReconstructor.cxx:1390 AliMUONTrackReconstructor.cxx:1391 AliMUONTrackReconstructor.cxx:1392 AliMUONTrackReconstructor.cxx:1393 AliMUONTrackReconstructor.cxx:1394 AliMUONTrackReconstructor.cxx:1395 AliMUONTrackReconstructor.cxx:1396 AliMUONTrackReconstructor.cxx:1397 AliMUONTrackReconstructor.cxx:1398 AliMUONTrackReconstructor.cxx:1399 AliMUONTrackReconstructor.cxx:1400 AliMUONTrackReconstructor.cxx:1401 AliMUONTrackReconstructor.cxx:1402 AliMUONTrackReconstructor.cxx:1403 AliMUONTrackReconstructor.cxx:1404 AliMUONTrackReconstructor.cxx:1405 AliMUONTrackReconstructor.cxx:1406 AliMUONTrackReconstructor.cxx:1407 AliMUONTrackReconstructor.cxx:1408 AliMUONTrackReconstructor.cxx:1409 AliMUONTrackReconstructor.cxx:1410 AliMUONTrackReconstructor.cxx:1411 AliMUONTrackReconstructor.cxx:1412 AliMUONTrackReconstructor.cxx:1413 AliMUONTrackReconstructor.cxx:1414 AliMUONTrackReconstructor.cxx:1415 AliMUONTrackReconstructor.cxx:1416 AliMUONTrackReconstructor.cxx:1417 AliMUONTrackReconstructor.cxx:1418 AliMUONTrackReconstructor.cxx:1419 AliMUONTrackReconstructor.cxx:1420 AliMUONTrackReconstructor.cxx:1421 AliMUONTrackReconstructor.cxx:1422 AliMUONTrackReconstructor.cxx:1423 AliMUONTrackReconstructor.cxx:1424 AliMUONTrackReconstructor.cxx:1425 AliMUONTrackReconstructor.cxx:1426 AliMUONTrackReconstructor.cxx:1427 AliMUONTrackReconstructor.cxx:1428 AliMUONTrackReconstructor.cxx:1429 AliMUONTrackReconstructor.cxx:1430 AliMUONTrackReconstructor.cxx:1431 AliMUONTrackReconstructor.cxx:1432 AliMUONTrackReconstructor.cxx:1433 AliMUONTrackReconstructor.cxx:1434 AliMUONTrackReconstructor.cxx:1435 AliMUONTrackReconstructor.cxx:1436 AliMUONTrackReconstructor.cxx:1437 AliMUONTrackReconstructor.cxx:1438 AliMUONTrackReconstructor.cxx:1439 AliMUONTrackReconstructor.cxx:1440 AliMUONTrackReconstructor.cxx:1441 AliMUONTrackReconstructor.cxx:1442 AliMUONTrackReconstructor.cxx:1443 AliMUONTrackReconstructor.cxx:1444 AliMUONTrackReconstructor.cxx:1445 AliMUONTrackReconstructor.cxx:1446 AliMUONTrackReconstructor.cxx:1447 AliMUONTrackReconstructor.cxx:1448 AliMUONTrackReconstructor.cxx:1449 AliMUONTrackReconstructor.cxx:1450 AliMUONTrackReconstructor.cxx:1451 AliMUONTrackReconstructor.cxx:1452 AliMUONTrackReconstructor.cxx:1453 AliMUONTrackReconstructor.cxx:1454 AliMUONTrackReconstructor.cxx:1455 AliMUONTrackReconstructor.cxx:1456 AliMUONTrackReconstructor.cxx:1457 AliMUONTrackReconstructor.cxx:1458 AliMUONTrackReconstructor.cxx:1459 AliMUONTrackReconstructor.cxx:1460 AliMUONTrackReconstructor.cxx:1461 AliMUONTrackReconstructor.cxx:1462 AliMUONTrackReconstructor.cxx:1463 AliMUONTrackReconstructor.cxx:1464 AliMUONTrackReconstructor.cxx:1465 AliMUONTrackReconstructor.cxx:1466 AliMUONTrackReconstructor.cxx:1467 AliMUONTrackReconstructor.cxx:1468 AliMUONTrackReconstructor.cxx:1469 AliMUONTrackReconstructor.cxx:1470 AliMUONTrackReconstructor.cxx:1471 AliMUONTrackReconstructor.cxx:1472 AliMUONTrackReconstructor.cxx:1473 AliMUONTrackReconstructor.cxx:1474 AliMUONTrackReconstructor.cxx:1475 AliMUONTrackReconstructor.cxx:1476 AliMUONTrackReconstructor.cxx:1477 AliMUONTrackReconstructor.cxx:1478 AliMUONTrackReconstructor.cxx:1479 AliMUONTrackReconstructor.cxx:1480 AliMUONTrackReconstructor.cxx:1481 AliMUONTrackReconstructor.cxx:1482 AliMUONTrackReconstructor.cxx:1483 AliMUONTrackReconstructor.cxx:1484 AliMUONTrackReconstructor.cxx:1485 AliMUONTrackReconstructor.cxx:1486 AliMUONTrackReconstructor.cxx:1487 AliMUONTrackReconstructor.cxx:1488 AliMUONTrackReconstructor.cxx:1489 AliMUONTrackReconstructor.cxx:1490 AliMUONTrackReconstructor.cxx:1491 AliMUONTrackReconstructor.cxx:1492 AliMUONTrackReconstructor.cxx:1493 AliMUONTrackReconstructor.cxx:1494 AliMUONTrackReconstructor.cxx:1495 AliMUONTrackReconstructor.cxx:1496 AliMUONTrackReconstructor.cxx:1497 AliMUONTrackReconstructor.cxx:1498 AliMUONTrackReconstructor.cxx:1499 AliMUONTrackReconstructor.cxx:1500 AliMUONTrackReconstructor.cxx:1501 AliMUONTrackReconstructor.cxx:1502 AliMUONTrackReconstructor.cxx:1503 AliMUONTrackReconstructor.cxx:1504 AliMUONTrackReconstructor.cxx:1505 AliMUONTrackReconstructor.cxx:1506 AliMUONTrackReconstructor.cxx:1507 AliMUONTrackReconstructor.cxx:1508 AliMUONTrackReconstructor.cxx:1509 AliMUONTrackReconstructor.cxx:1510 AliMUONTrackReconstructor.cxx:1511 AliMUONTrackReconstructor.cxx:1512 AliMUONTrackReconstructor.cxx:1513 AliMUONTrackReconstructor.cxx:1514 AliMUONTrackReconstructor.cxx:1515 AliMUONTrackReconstructor.cxx:1516 AliMUONTrackReconstructor.cxx:1517 AliMUONTrackReconstructor.cxx:1518 AliMUONTrackReconstructor.cxx:1519 AliMUONTrackReconstructor.cxx:1520 AliMUONTrackReconstructor.cxx:1521 AliMUONTrackReconstructor.cxx:1522 AliMUONTrackReconstructor.cxx:1523 AliMUONTrackReconstructor.cxx:1524 AliMUONTrackReconstructor.cxx:1525 AliMUONTrackReconstructor.cxx:1526 AliMUONTrackReconstructor.cxx:1527 AliMUONTrackReconstructor.cxx:1528 AliMUONTrackReconstructor.cxx:1529 AliMUONTrackReconstructor.cxx:1530 AliMUONTrackReconstructor.cxx:1531