eTask->SetAODfilterBits(arg1.Atoi(),arg2.Atoi());
delete arr;
} else {
- if (runPeriod.IsNull())
- ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.");
+ if (!runPeriod.IsNull())
+ ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.", runPeriod.Data());
}
eTask->SetESDtrackCuts(cuts);
fCalo2Name(""),
fJets2Name(""),
fRho2Name(""),
+ fJet2Radius(0.4),
+ fJet2AreaCut(-1),
fPtBiasJet2Track(0),
fPtBiasJet2Clus(0),
fAreCollections1MC(kFALSE),
fIsPythia(kTRUE),
fMCLabelShift(0),
fUseCellsToMatch(kFALSE),
+ fMinJetMCPt(1),
fPythiaHeader(0),
fPtHardBin(0),
fNTrials(0),
fCalo2Name(""),
fJets2Name("MCJets"),
fRho2Name(""),
+ fJet2Radius(0.4),
+ fJet2AreaCut(-1),
fPtBiasJet2Track(0),
fPtBiasJet2Clus(0),
fAreCollections1MC(kFALSE),
fIsPythia(kTRUE),
fMCLabelShift(0),
fUseCellsToMatch(kFALSE),
+ fMinJetMCPt(1),
fPythiaHeader(0),
fPtHardBin(0),
fNTrials(0),
}
}
+ if (fPercAreaCut >= 0) {
+ if (fJet2AreaCut >= 0)
+ AliInfo(Form("%s: jet 2 area cut will be calculated as a percentage of the average area, given value will be overwritten", GetName()));
+ fJet2AreaCut = fPercAreaCut * fJet2Radius * fJet2Radius * TMath::Pi();
+ }
+ if (fJet2AreaCut < 0)
+ fJet2AreaCut = 0;
+
if (fJet2MinEta == -999)
fJet2MinEta = fJetMinEta - fJetRadius;
if (fJet2MaxEta == -999)
continue;
if (jet1->ClosestJet() && jet1->ClosestJet()->ClosestJet() == jet1 &&
- jet1->ClosestJetDistance() < fMatchingPar1 && jet1->ClosestJet()->ClosestJetDistance() < fMatchingPar2) { // Matched jet found
+ jet1->ClosestJetDistance() < fMatchingPar1 && jet1->ClosestJet()->ClosestJetDistance() < fMatchingPar2) { // Matched jet found
jet1->SetMatchedToClosest(fMatching);
jet1->ClosestJet()->SetMatchedToClosest(fMatching);
+ AliDebug(2,Form("Found matching: jet1 pt = %f, eta = %f, phi = %f, jet2 pt = %f, eta = %f, phi = %f",
+ jet1->Pt(), jet1->Eta(), jet1->Phi(),
+ jet1->MatchedJet()->Pt(), jet1->MatchedJet()->Eta(), jet1->MatchedJet()->Phi()));
}
}
if (!AcceptJet(jet1))
continue;
- if (jet1->MCPt() < 1)
+ if (jet1->MCPt() < fMinJetMCPt)
continue;
if (order) {
AliError(Form("Could not receive jet %d", j));
continue;
}
-
if (!AcceptJet(jet2))
continue;
void SetClus2Name(const char *n) { fCalo2Name = n ; }
void SetJet2EtaLimits(Float_t min=-999, Float_t max=-999) { fJet2MinEta = min, fJet2MaxEta = max ; }
void SetJet2PhiLimits(Float_t min=-999, Float_t max=-999) { fJet2MinPhi = min, fJet2MaxPhi = max ; }
+ void SetJet2Radius(Float_t r) { fJet2Radius = r ; }
+ void SetJet2AreaCut(Float_t cut) { fJet2AreaCut = cut ; }
void SetRho2Name(const char *n) { fRho2Name = n ; }
void SetPtBiasJet2Clus(Float_t b) { fPtBiasJet2Clus = b ; }
void SetPtBiasJet2Track(Float_t b) { fPtBiasJet2Track = b ; }
TString fCalo2Name; // name of second cluster collection
TString fJets2Name; // name of second jet collection
TString fRho2Name; // name of second jet collection
+ Float_t fJet2Radius; // jet radius of second jet collection
+ Float_t fJet2AreaCut; // cut on jet area (second jet collection)
Float_t fPtBiasJet2Track; // select jets 2 with a minimum pt track
Float_t fPtBiasJet2Clus; // select jets 2 with a minimum pt cluster
Bool_t fAreCollections1MC; // collections 1 MC
Bool_t fIsPythia; // trigger, if it is a PYTHIA production
Int_t fMCLabelShift; // if MC label > fMCLabelShift, MC label -= fMCLabelShift
Bool_t fUseCellsToMatch; // use cells instead of clusters to match jets (slower but sometimes needed)
+ Double_t fMinJetMCPt; // minimum jet MC pt
AliGenPythiaEventHeader *fPythiaHeader; //!event Pythia header
Int_t fPtHardBin; //!event pt hard bin
TH2 *fHistDeltaMCPtvsDeltaArea; //!jet 1 MC pt - jet2 pt vs delta area
TH2 *fHistJet1MCPtvsJet2Pt; //!correlation jet 1 MC pt vs jet 2 pt
-
private:
AliJetResponseMaker(const AliJetResponseMaker&); // not implemented
AliJetResponseMaker &operator=(const AliJetResponseMaker&); // not implemented
- ClassDef(AliJetResponseMaker, 15) // Jet response matrix producing task
+ ClassDef(AliJetResponseMaker, 16) // Jet response matrix producing task
};
#endif
jetEmb->SetIncludeNoITS(includeNoITS);
TString runPeriod(runperiod);
runPeriod.ToLower();
- if (runPeriod == "lhc11h") {
- jetEmb->SetAODfilterBits(256,512); // hybrid tracks for LHC11h
+ if (runPeriod == "lhc11h" || runPeriod == "lhc12a15e") {
+ jetEmb->SetAODfilterBits(256,512); // hybrid tracks for LHC11h and LHC12a15e
}
- else if (runPeriod == "lhc11a" || runPeriod == "lhc12a15a" || runPeriod == "lhc12a15e") {
- jetEmb->SetAODfilterBits(256,16); // hybrid tracks for LHC11a, LHC12a15a and LHC12a15e
+ else if (runPeriod == "lhc11a" || runPeriod == "lhc12a15a") {
+ jetEmb->SetAODfilterBits(256,16); // hybrid tracks for LHC11a and LHC12a15a
}
else {
- if (runPeriod.IsNull())
- ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.");
+ if (!runPeriod.IsNull())
+ ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.", runPeriod.Data());
}
//-------------------------------------------------------
jetEmb->SetIncludeNoITS(includeNoITS);
TString runPeriod(runperiod);
runPeriod.ToLower();
- if (runPeriod == "lhc12a15a" || runPeriod == "lhc12a15e") {
+ if (runPeriod == "lhc12a15e") {
+ jetEmb->SetAODfilterBits(256,512);
+ }
+ else if (runPeriod == "lhc12a15a") {
jetEmb->SetAODfilterBits(256,16);
}
else {
- if (runPeriod.IsNull())
- ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.");
+ if (!runPeriod.IsNull())
+ ::Warning("Run period %s not known. It will use IsHybridGlobalConstrainedGlobal.", runPeriod.Data());
}
jetEmb->SetPYTHIAPath(simpath);