X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITStrackerSA.cxx;h=cc1db2833924e9642a8c72809202b71505c85444;hb=405be8ef164a6a96b98b5b305db3820ece4ccfcb;hp=103a37d22d275196b264af8075aa7a799135e1db;hpb=6f178e14f29ad35cc665b033f3d881a7f52ab450;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITStrackerSA.cxx b/ITS/AliITStrackerSA.cxx index 103a37d22d2..cc1db283392 100644 --- a/ITS/AliITStrackerSA.cxx +++ b/ITS/AliITStrackerSA.cxx @@ -468,9 +468,12 @@ Int_t AliITStrackerSA::FindTracks(AliESDEvent* event){ } if(layOK>=iMinNPoints) { + //printf("-NPOINTS: %d; MAP: %d %d %d %d %d %d\n",layOK,nClusLay[0],nClusLay[1],nClusLay[2],nClusLay[3],nClusLay[4],nClusLay[5]); AliITStrackV2* tr2 = 0; tr2 = FitTrack(trs,primaryVertex); if(!tr2) continue; + //printf("-NPOINTS fit: %d\n",tr2->GetNumberOfClusters()); + AliESDtrack outtrack; outtrack.UpdateTrackParams(tr2,AliESDtrack::kITSin); @@ -487,8 +490,8 @@ Int_t AliITStrackerSA::FindTracks(AliESDEvent* event){ //if 5/6 points are required, second loop starting //from second layer (SPD2), to find tracks with point of - //layer 1 missing - if(!fSixPoints) { + //layer 1 missing. Not done for cosmics. + if(!fSixPoints && fOuterStartLayer==0) { //printf("looking from SPD2\n"); // counter for clusters on each layer for(Int_t nloop=0;nloop=minNPoints){ // 5/6 + if(layOK>=minNPoints){ // 5/6 + //printf("--NPOINTS: %d; MAP: %d %d %d %d %d %d\n",layOK,nClusLay[0],nClusLay[1],nClusLay[2],nClusLay[3],nClusLay[4],nClusLay[5]); + AliITStrackV2* tr2 = 0; tr2 = FitTrack(trs,primaryVertex); if(!tr2) continue; + //printf("--NPOINTS fit: %d\n",tr2->GetNumberOfClusters()); AliESDtrack outtrack; outtrack.UpdateTrackParams(tr2,AliESDtrack::kITSin); @@ -559,7 +565,7 @@ Int_t AliITStrackerSA::FindTracks(AliESDEvent* event){ // search for tracks starting from SPD2, SDD1, SDD2, SSD2 // for cosmics (A. Dainese 31.07.07) - if(fOuterStartLayer>0) { + if(fOuterStartLayer>0 && !AliITSReconstructor::GetRecoParam()->GetSAOnePointTracks()) { for(Int_t innLay=1; innLay<=fOuterStartLayer; innLay++) { //printf("Searching from layer %d outward\n",innLay); minNPoints=AliITSgeomTGeo::GetNLayers()-innLay; @@ -613,10 +619,11 @@ Int_t AliITStrackerSA::FindTracks(AliESDEvent* event){ if(nClusLay[nnp]!=0) layOK+=1; } if(layOK>=minNPoints){ + //printf("---NPOINTS: %d; MAP: %d %d %d %d %d %d\n",layOK,nClusLay[0],nClusLay[1],nClusLay[2],nClusLay[3],nClusLay[4],nClusLay[5]); AliITStrackV2* tr2 = 0; tr2 = FitTrack(trs,primaryVertex); if(!tr2) continue; - + //printf("---NPOINTS fit: %d\n",tr2->GetNumberOfClusters()); AliESDtrack outtrack; outtrack.UpdateTrackParams(tr2,AliESDtrack::kITSin); @@ -633,11 +640,12 @@ Int_t AliITStrackerSA::FindTracks(AliESDEvent* event){ } //end if(fOuterStartLayer>0) - // search for 1-point tracks, only for cosmics + // search for 1-point tracks in SPD, only for cosmics // (A.Dainese 21.03.08) if(AliITSReconstructor::GetRecoParam()->GetSAOnePointTracks() && TMath::Abs(event->GetMagneticField())<0.01) { - for(Int_t innLay=0; innLay<=fOuterStartLayer; innLay++) { + Int_t outerLayer=1; // only SPD + for(Int_t innLay=0; innLay<=TMath::Min(1,fOuterStartLayer); innLay++) { // counter for clusters on each layer for(Int_t nloop=0;nloopGetNumberOfClusters()); AliESDtrack outtrack; outtrack.UpdateTrackParams(tr2,AliESDtrack::kITSin); @@ -1145,7 +1155,7 @@ Int_t AliITStrackerSA::FindTrackLowChiSquare() const { Double_t minChi2=trk->GetChi2(); Int_t index=0; for(Int_t i=1;iAt(i); + trk = (AliITStrackV2*)fListOfTracks->At(i); Double_t chi2=trk->GetChi2(); if(chi2