,fJetEtaMax(0)
,fJetPhiMin(0)
,fJetPhiMax(0)
+ ,fJetMinArea(0)
,fFFRadius(0)
,fFFMinLTrackPt(-1)
,fFFMaxTrackPt(-1)
,fJetEtaMax(0)
,fJetPhiMin(0)
,fJetPhiMax(0)
+ ,fJetMinArea(0)
,fFFRadius(0)
,fFFMinLTrackPt(-1)
,fFFMaxTrackPt(-1)
,fJetEtaMax(copy.fJetEtaMax)
,fJetPhiMin(copy.fJetPhiMin)
,fJetPhiMax(copy.fJetPhiMax)
+ ,fJetMinArea(copy.fJetMinArea)
,fFFRadius(copy.fFFRadius)
,fFFMinLTrackPt(copy.fFFMinLTrackPt)
,fFFMaxTrackPt(copy.fFFMaxTrackPt)
fJetEtaMax = o.fJetEtaMax;
fJetPhiMin = o.fJetPhiMin;
fJetPhiMax = o.fJetPhiMin;
+ fJetMinArea = o.fJetMinArea;
fFFRadius = o.fFFRadius;
fFFMinLTrackPt = o.fFFMinLTrackPt;
fFFMaxTrackPt = o.fFFMaxTrackPt;
Int_t cl = 0;
if(handler->InheritsFrom("AliAODInputHandler")){
// since it is not supported by the helper task define own classes
- centPercent = fAOD->GetHeader()->GetCentrality();
+ centPercent = ((AliVAODHeader*)fAOD->GetHeader())->GetCentrality();
cl = 1;
if(centPercent>10) cl = 2;
if(centPercent>30) cl = 3;
if(GetFFMinNTracks()>0 && jettracklist->GetSize()<=GetFFMinNTracks()) isBadJet = kTRUE;
- if(isBadJet) continue;
+ if(isBadJet){
+ delete jettracklist;
+ continue;
+ }
if(ptFractionEmbedded>=fCutFractionPtEmbedded){ // if no embedding: ptFraction = cutFraction = 0
if(GetFFMinNTracks()>0 && jettracklist->GetSize()<=GetFFMinNTracks()) isBadJet = kTRUE;;
- if(isBadJet) continue;
+ if(isBadJet){
+ delete jettracklist;
+ continue;
+ }
for(Int_t it=0; it<jettracklist->GetSize(); ++it){
if(GetFFMinNTracks()>0 && jettracklistGenSecNS->GetSize()<=GetFFMinNTracks()) isBadJetGenSec = kTRUE;
if(GetFFMinNTracks()>0 && jettracklistRec->GetSize()<=GetFFMinNTracks()) isBadJetRec = kTRUE;
- if(isBadJetRec) continue;
+ if(isBadJetRec){
+ delete jettracklistGenPrim;
+ delete jettracklistGenSecNS;
+ delete jettracklistGenSecS;
+ delete jettracklistRec;
+
+ continue;
+ }
if(fQAMode&2) fQAJetHistosRecEffLeading->FillJetQA( jetEta, jetPhi, sumPtGenLeadingJetRecEff );
jettracklistRec,kTRUE,fJSMode,fProNtracksLeadingJetRecSecSsc,fProDelRPtSumRecSecSsc);
}
- delete jettracklistGenPrim;
+ delete jettracklistGenPrim;
delete jettracklistGenSecNS;
delete jettracklistGenSecS;
delete jettracklistRec;
TList* perpjettracklistGen1 = new TList();
TList* perpjettracklistGen2 = new TList();
- Double_t sumPtGenPerp = 0.;
+ //Double_t sumPtGenPerp = 0.;
Double_t sumPtGenPerp1 = 0.;
Double_t sumPtGenPerp2 = 0.;
GetTracksTiltedwrpJetAxis(TMath::Pi()/2.,fTracksAODMCCharged, perpjettracklistGen1, jet, TMath::Abs(GetFFRadius()) , sumPtGenPerp1);
perpjettracklistGen->AddAll(perpjettracklistGen1);
perpjettracklistGen->AddAll(perpjettracklistGen2);
- sumPtGenPerp = 0.5*(sumPtGenPerp1+sumPtGenPerp2);
+ //sumPtGenPerp = 0.5*(sumPtGenPerp1+sumPtGenPerp2);
TList* perpjettracklistGenSecNS = new TList();
TList* perpjettracklistGenSecNS1 = new TList();
TList* perpjettracklistGenSecNS2 = new TList();
- Double_t sumPtGenPerpNS;
+ //Double_t sumPtGenPerpNS;
Double_t sumPtGenPerpNS1;
Double_t sumPtGenPerpNS2;
GetTracksTiltedwrpJetAxis(TMath::Pi()/2.,fTracksAODMCChargedSecNS, perpjettracklistGenSecNS1, jet, TMath::Abs(GetFFRadius()) , sumPtGenPerpNS1);
perpjettracklistGenSecNS->AddAll(perpjettracklistGenSecNS1);
perpjettracklistGenSecNS->AddAll(perpjettracklistGenSecNS2);
- sumPtGenPerpNS = 0.5*(sumPtGenPerpNS1+sumPtGenPerpNS2);
+ //sumPtGenPerpNS = 0.5*(sumPtGenPerpNS1+sumPtGenPerpNS2);
TList* perpjettracklistGenSecS = new TList();
TList* perpjettracklistGenSecS1 = new TList();
TList* perpjettracklistGenSecS2 = new TList();
- Double_t sumPtGenPerpS;
+ //Double_t sumPtGenPerpS;
Double_t sumPtGenPerpS1;
Double_t sumPtGenPerpS2;
GetTracksTiltedwrpJetAxis(TMath::Pi()/2.,fTracksAODMCChargedSecS, perpjettracklistGenSecS1, jet, TMath::Abs(GetFFRadius()) , sumPtGenPerpS1);
perpjettracklistGenSecS->AddAll(perpjettracklistGenSecS1);
perpjettracklistGenSecS->AddAll(perpjettracklistGenSecS2);
- sumPtGenPerpS = 0.5*(sumPtGenPerpS1+sumPtGenPerpS2);
+ //sumPtGenPerpS = 0.5*(sumPtGenPerpS1+sumPtGenPerpS2);
if(perpjettracklistGen->GetSize() != perpjettracklistGen1->GetSize() + perpjettracklistGen2->GetSize()){
// all rec. tracks, esd filter mask, eta range
for(Int_t it=0; it<fAOD->GetNumberOfTracks(); ++it){
- AliAODTrack *tr = fAOD->GetTrack(it);
+ AliAODTrack *tr = dynamic_cast<AliAODTrack*>(fAOD->GetTrack(it));
+ if(!tr) AliFatal("Not a standard AOD");
if(type == kTrackAODCuts || type==kTrackAODQualityCuts || type==kTrackAODExtraCuts){
if(!tmp) continue;
if( tmp->Pt() < fJetPtCut ) continue;
+ if( tmp->EffectiveAreaCharged() < fJetMinArea ) continue;
if( type == kJetsRecAcceptance &&
( tmp->Eta() < fJetEtaMin
|| tmp->Eta() > fJetEtaMax
if(!tmp) continue;
if( tmp->Pt() < fJetPtCut ) continue;
+ if( tmp->EffectiveAreaCharged() < fJetMinArea ) continue;
if( type == kJetsGenAcceptance &&
( tmp->Eta() < fJetEtaMin
|| tmp->Eta() > fJetEtaMax
if(!tmp) continue;
if( tmp->Pt() < fJetPtCut ) continue;
+ if( tmp->EffectiveAreaCharged() < fJetMinArea ) continue;
if( tmp->Eta() < fJetEtaMin
|| tmp->Eta() > fJetEtaMax
|| tmp->Phi() < fJetPhiMin
// get median cluster
AliAODJet* medianCluster = 0;
- Double_t medianDensity = 0;
+ //Double_t medianDensity = 0;
if(TMath::Odd(nBckgClusters)){
Int_t medianIndex = indices[(Int_t) (0.5*(nBckgClusters-1))];
medianCluster = (AliAODJet*)(fBckgJetsRec->At(medianIndex));
- Double_t clusterPt = medianCluster->Pt();
- Double_t area = medianCluster->EffectiveAreaCharged();
+ //Double_t clusterPt = medianCluster->Pt();
+ //Double_t area = medianCluster->EffectiveAreaCharged();
- if(area>0) medianDensity = clusterPt/area;
+ //if(area>0) medianDensity = clusterPt/area;
}
else{
AliAODJet* medianCluster1 = (AliAODJet*)(fBckgJetsRec->At(medianIndex1));
AliAODJet* medianCluster2 = (AliAODJet*)(fBckgJetsRec->At(medianIndex2));
- Double_t density1 = 0;
- Double_t clusterPt1 = medianCluster1->Pt();
- Double_t area1 = medianCluster1->EffectiveAreaCharged();
- if(area1>0) density1 = clusterPt1/area1;
+ //Double_t density1 = 0;
+ //Double_t clusterPt1 = medianCluster1->Pt();
+ //Double_t area1 = medianCluster1->EffectiveAreaCharged();
+ //if(area1>0) density1 = clusterPt1/area1;
- Double_t density2 = 0;
- Double_t clusterPt2 = medianCluster2->Pt();
- Double_t area2 = medianCluster2->EffectiveAreaCharged();
- if(area2>0) density2 = clusterPt2/area2;
+ //Double_t density2 = 0;
+ //Double_t clusterPt2 = medianCluster2->Pt();
+ //Double_t area2 = medianCluster2->EffectiveAreaCharged();
+ //if(area2>0) density2 = clusterPt2/area2;
- medianDensity = 0.5*(density1+density2);
+ //medianDensity = 0.5*(density1+density2);
medianCluster = ( (fRandom->Rndm()>0.5) ? medianCluster1 : medianCluster2 ); // select one randomly to avoid adding areas
}