Skip to content

Commit 8e3ab8e

Browse files
[PWGJE] jetSpectraCharged: pTHat cut applied to MCP/MCD jets (#10945)
1 parent 54028b2 commit 8e3ab8e

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

PWGJE/Tasks/jetSpectraCharged.cxx

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ struct JetSpectraCharged {
6969
Configurable<float> pTHatMaxMCD{"pTHatMaxMCD", 999.0, "maximum fraction of hard scattering for jet acceptance in detector MC"};
7070
Configurable<float> pTHatMaxMCP{"pTHatMaxMCP", 999.0, "maximum fraction of hard scattering for jet acceptance in particle MC"};
7171
Configurable<float> pTHatExponent{"pTHatExponent", 6.0, "exponent of the event weight for the calculation of pTHat"};
72+
Configurable<float> pTHatAbsoluteMin{"pTHatAbsoluteMin", -99.0, "minimum value of pTHat"};
7273
Configurable<double> jetPtMax{"jetPtMax", 200., "set jet pT bin max"};
7374
Configurable<float> jetEtaMin{"jetEtaMin", -0.7, "minimum jet pseudorapidity"};
7475
Configurable<float> jetEtaMax{"jetEtaMax", 0.7, "maximum jet pseudorapidity"};
@@ -293,6 +294,10 @@ struct JetSpectraCharged {
293294
template <typename TJets>
294295
void fillJetHistograms(TJets const& jet, float centrality, float weight = 1.0)
295296
{
297+
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
298+
if (jet.pt() > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
299+
return;
300+
}
296301
if (jet.r() == round(selectedJetsRadius * 100.0f)) {
297302
registry.fill(HIST("h_jet_pt"), jet.pt(), weight);
298303
registry.fill(HIST("h_jet_eta"), jet.eta(), weight);
@@ -313,6 +318,10 @@ struct JetSpectraCharged {
313318
template <typename TJets>
314319
void fillJetAreaSubHistograms(TJets const& jet, float centrality, float rho, float weight = 1.0)
315320
{
321+
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
322+
if (jet.pt() > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
323+
return;
324+
}
316325
double jetcorrpt = jet.pt() - (rho * jet.area());
317326
if (jet.r() == round(selectedJetsRadius * 100.0f)) {
318327
// fill jet histograms after area-based subtraction
@@ -338,6 +347,10 @@ struct JetSpectraCharged {
338347
template <typename TJets>
339348
void fillMCPHistograms(TJets const& jet, float weight = 1.0)
340349
{
350+
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
351+
if (jet.pt() > pTHatMaxMCP * pTHat || pTHat < pTHatAbsoluteMin) {
352+
return;
353+
}
341354
if (jet.r() == round(selectedJetsRadius * 100.0f)) {
342355
// fill mcp jet histograms
343356
registry.fill(HIST("h_jet_pt_part"), jet.pt(), weight);
@@ -356,6 +369,10 @@ struct JetSpectraCharged {
356369
template <typename TJets>
357370
void fillMCPAreaSubHistograms(TJets const& jet, float rho = 0.0, float weight = 1.0)
358371
{
372+
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
373+
if (jet.pt() > pTHatMaxMCP * pTHat || pTHat < pTHatAbsoluteMin) {
374+
return;
375+
}
359376
if (jet.r() == round(selectedJetsRadius * 100.0f)) {
360377
// fill mcp jet histograms
361378
double jetcorrpt = jet.pt() - (rho * jet.area());
@@ -373,6 +390,10 @@ struct JetSpectraCharged {
373390
template <typename TJets>
374391
void fillEventWiseConstituentSubtractedHistograms(TJets const& jet, float centrality, float weight = 1.0)
375392
{
393+
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
394+
if (jet.pt() > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
395+
return;
396+
}
376397
if (jet.r() == round(selectedJetsRadius * 100.0f)) {
377398
registry.fill(HIST("h2_centrality_jet_pt_eventwiseconstituentsubtracted"), centrality, jet.pt(), weight);
378399
registry.fill(HIST("jet_observables_eventwiseconstituentsubtracted"), jet.pt(), jet.eta(), jet.phi(), weight);
@@ -390,14 +411,14 @@ struct JetSpectraCharged {
390411
void fillMatchedHistograms(TBase const& jetMCD, float weight = 1.0)
391412
{
392413
float pTHat = 10. / (std::pow(weight, 1.0 / pTHatExponent));
393-
if (jetMCD.pt() > pTHatMaxMCD * pTHat) {
414+
if (jetMCD.pt() > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
394415
return;
395416
}
396417
// fill geometry matched histograms
397418
if (checkGeoMatched) {
398419
if (jetMCD.has_matchedJetGeo()) {
399420
for (const auto& jetMCP : jetMCD.template matchedJetGeo_as<std::decay_t<TTag>>()) {
400-
if (jetMCP.pt() > pTHatMaxMCP * pTHat) {
421+
if (jetMCP.pt() > pTHatMaxMCP * pTHat || pTHat < pTHatAbsoluteMin) {
401422
continue;
402423
}
403424
if (jetMCD.r() == round(selectedJetsRadius * 100.0f)) {

0 commit comments

Comments
 (0)