X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWGPP%2FAliAnalysisTaskFilteredTree.cxx;h=5bcb187a2721d61e7b16724fe71e61028a9f5898;hb=35b193b453a046e5a5dfb0acf982699153966551;hp=3311353903a224ca79d1719421333ddeac754b65;hpb=1a30582aba12d50f5bdb7ea116e818957c8a2e9c;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWGPP/AliAnalysisTaskFilteredTree.cxx b/PWGPP/AliAnalysisTaskFilteredTree.cxx index 3311353903a..5bcb187a272 100644 --- a/PWGPP/AliAnalysisTaskFilteredTree.cxx +++ b/PWGPP/AliAnalysisTaskFilteredTree.cxx @@ -349,7 +349,7 @@ void AliAnalysisTaskFilteredTree::UserExec(Option_t *) if (fProcessCosmics) { ProcessCosmics(fESD,fESDfriend); } if(fMC) { ProcessMCEff(fESD,fMC,fESDfriend);} if (fProcessITSTPCmatchOut) ProcessITSTPCmatchOut(fESD, fESDfriend); - printf("processed event %d\n", Entry()); + printf("processed event %d\n", Int_t(Entry())); } //_____________________________________________________________________________ @@ -359,7 +359,6 @@ void AliAnalysisTaskFilteredTree::ProcessCosmics(AliESDEvent *const event, AliES // Find cosmic pairs (triggered or random) // // - AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler(); AliESDVertex *vertexSPD = (AliESDVertex *)event->GetPrimaryVertexSPD(); AliESDVertex *vertexTPC = (AliESDVertex *)event->GetPrimaryVertexTPC(); const Double_t kMinPt=0.8; @@ -369,7 +368,7 @@ void AliAnalysisTaskFilteredTree::ProcessCosmics(AliESDEvent *const event, AliES Int_t ntracks=event->GetNumberOfTracks(); UInt_t specie = event->GetEventSpecie(); // skip laser events if (specie==AliRecoParam::kCalib) return; - + Int_t ntracksFriend = esdFriend ? esdFriend->GetNumberOfTracks() : 0; for (Int_t itrack0=0;itrack0GetInnerParam(); AliESDfriendTrack* friendTrack0=NULL; - if (esdFriend) {if (!esdFriend->TestSkipBit()) friendTrack0 = esdFriend->GetTrack(itrack0);} //this guy can be NULL + if (esdFriend &&!esdFriend->TestSkipBit()){ + if (itrack0GetTrack(itrack0); + } //this guy can be NULL + } for (Int_t itrack1=itrack0+1;itrack1GetTrack(itrack1); @@ -445,7 +448,12 @@ void AliAnalysisTaskFilteredTree::ProcessCosmics(AliESDEvent *const event, AliES AliESDfriendTrack* friendTrack1=NULL; - if (esdFriend) {if (!esdFriend->TestSkipBit()) friendTrack1 = esdFriend->GetTrack(itrack1);} //this guy can be NULL + if (esdFriend &&!esdFriend->TestSkipBit()){ + if (itrack1GetTrack(itrack1); + } //this guy can be NULL + } + // AliESDfriendTrack *friendTrackStore0=friendTrack0; // store friend track0 for later processing AliESDfriendTrack *friendTrackStore1=friendTrack1; // store friend track1 for later processing @@ -600,7 +608,7 @@ void AliAnalysisTaskFilteredTree::Process(AliESDEvent *const esdEvent, AliMCEven if(!vtxSPD) return; Bool_t isEventOK = evtCuts->AcceptEvent(esdEvent,mcEvent,vtxESD); - //printf("isEventOK %d, isEventTriggered %d, status %d, vz %f \n",isEventOK, isEventTriggered, vtxESD->GetStatus(), vtxESD->GetZv()); + //printf("isEventOK %d, isEventTriggered %d, status %d, vz %f \n",isEventOK, isEventTriggered, vtxESD->GetStatus(), vtxESD->GetZ()); //printf("GetAnalysisMode() %d \n",GetAnalysisMode()); Int_t ntracks = esdEvent->GetNumberOfTracks(); @@ -623,9 +631,9 @@ void AliAnalysisTaskFilteredTree::Process(AliESDEvent *const esdEvent, AliMCEven // //Double_t vert[3] = {0}; - //vert[0] = vtxESD->GetXv(); - //vert[1] = vtxESD->GetYv(); - //vert[2] = vtxESD->GetZv(); + //vert[0] = vtxESD->GetX(); + //vert[1] = vtxESD->GetY(); + //vert[2] = vtxESD->GetZ(); Int_t mult = vtxESD->GetNContributors(); Int_t multSPD = vtxSPD->GetNContributors(); Int_t multTPC = vtxTPC->GetNContributors(); @@ -703,6 +711,7 @@ void AliAnalysisTaskFilteredTree::ProcessLaser(AliESDEvent *const esdEvent, AliM // // Process laser events -> dump tracks and clusters to the special tree // + const Double_t kMinPt = 5; if(!fFillTree) return; if(!fTreeSRedirector) return; const AliESDHeader* esdHeader = esdEvent->GetHeader(); @@ -723,6 +732,10 @@ void AliAnalysisTaskFilteredTree::ProcessLaser(AliESDEvent *const esdEvent, AliM if(!track) continue; if(track->GetTPCInnerParam()) countLaserTracks++; AliESDfriendTrack* friendTrack=NULL; + // suppress beam background and CE random reacks + if (track->GetInnerParam()->Pt()Rndm()>1/(1+TMath::Abs(fFriendDownscaling)); + if (skipTrack) continue; if (esdFriend) {if (!esdFriend->TestSkipBit()) friendTrack = esdFriend->GetTrack(iTrack);} //this guy can be NULL (*fTreeSRedirector)<<"Laser"<< "gid="<GetXv(); - vert[1] = vtxESD->GetYv(); - vert[2] = vtxESD->GetZv(); + vert[0] = vtxESD->GetX(); + vert[1] = vtxESD->GetY(); + vert[2] = vtxESD->GetZ(); Int_t mult = vtxESD->GetNContributors(); Float_t bz = esdEvent->GetMagneticField(); Int_t runNumber = esdEvent->GetRunNumber(); @@ -1573,9 +1586,9 @@ void AliAnalysisTaskFilteredTree::ProcessMCEff(AliESDEvent *const esdEvent, AliM // reco event info Double_t vert[3] = {0}; - vert[0] = vtxESD->GetXv(); - vert[1] = vtxESD->GetYv(); - vert[2] = vtxESD->GetZv(); + vert[0] = vtxESD->GetX(); + vert[1] = vtxESD->GetY(); + vert[2] = vtxESD->GetZ(); Int_t mult = vtxESD->GetNContributors(); Double_t bz = esdEvent->GetMagneticField(); Double_t runNumber = esdEvent->GetRunNumber(); @@ -1829,8 +1842,13 @@ void AliAnalysisTaskFilteredTree::ProcessV0(AliESDEvent *const esdEvent, AliMCEv AliESDfriendTrack* friendTrack1=NULL; if (esdFriend) { if (!esdFriend->TestSkipBit()){ - friendTrack0 = esdFriend->GetTrack(v0->GetIndex(0)); //this guy can be NULL - friendTrack1 = esdFriend->GetTrack(v0->GetIndex(1)); //this guy can be NULL + Int_t ntracksFriend = esdFriend->GetNumberOfTracks(); + if (v0->GetIndex(0)GetTrack(v0->GetIndex(0)); //this guy can be NULL + } + if (v0->GetIndex(1)GetTrack(v0->GetIndex(1)); //this guy can be NULL + } } } if (track0->GetSign()<0) { @@ -1965,9 +1983,9 @@ void AliAnalysisTaskFilteredTree::ProcessdEdx(AliESDEvent *const esdEvent, AliMC if(isEventOK && isEventTriggered) { Double_t vert[3] = {0}; - vert[0] = vtxESD->GetXv(); - vert[1] = vtxESD->GetYv(); - vert[2] = vtxESD->GetZv(); + vert[0] = vtxESD->GetX(); + vert[1] = vtxESD->GetY(); + vert[2] = vtxESD->GetZ(); Int_t mult = vtxESD->GetNContributors(); Double_t bz = esdEvent->GetMagneticField(); Double_t runNumber = esdEvent->GetRunNumber(); @@ -1986,7 +2004,13 @@ void AliAnalysisTaskFilteredTree::ProcessdEdx(AliESDEvent *const esdEvent, AliMC AliESDtrack *track = esdEvent->GetTrack(iTrack); if(!track) continue; AliESDfriendTrack* friendTrack=NULL; - if (esdFriend) {if (!esdFriend->TestSkipBit()) friendTrack = esdFriend->GetTrack(iTrack);} //this guy can be NULL + if (esdFriend && !esdFriend->TestSkipBit()) { + Int_t ntracksFriend = esdFriend->GetNumberOfTracks(); + if (iTrackGetTrack(iTrack); + } //this guy can be NULL + } + if(track->Charge()==0) continue; if(!esdTrackCuts->AcceptTrack(track)) continue; if(!accCuts->AcceptTrack(track)) continue;