Skip to content

Commit eccab30

Browse files
fgrosachiarazampolli
authored andcommitted
PWGHF: Add possibility to pass pT-hard bins from script (#1674)
* PWGHF: Add possibility to pass pT-hard bins from script * Add missing cast * Add missing cast * Fix typo (cherry picked from commit 96c75a6)
1 parent 0b18cc8 commit eccab30

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

MC/config/PWGHF/external/generator/generator_pythia8_embed_hf.C

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,20 @@ public:
7878
LOG(fatal) << "********** [GeneratorPythia8EmbedHF] bad configuration, fix it! **********";
7979
break;
8080
}
81+
82+
// we set pT hard bins
83+
auto seed = dynamic_cast<GeneratorPythia8GapTriggeredHF*>(mGeneratorEvHF)->getUsedSeed();
84+
float ptHardBins[4] = {2.76, 20., 50., 1000.};
85+
int iPt{0};
86+
if (seed % 10 < 7) {
87+
iPt = 0;
88+
} else if (seed % 10 < 9) {
89+
iPt = 1;
90+
} else {
91+
iPt = 2;
92+
}
93+
dynamic_cast<GeneratorPythia8GapTriggeredHF*>(mGeneratorEvHF)->readString(Form("PhaseSpace:pTHatMin = %f", ptHardBins[iPt]));
94+
dynamic_cast<GeneratorPythia8GapTriggeredHF*>(mGeneratorEvHF)->readString(Form("PhaseSpace:pTHatMax = %f", ptHardBins[iPt+1]));
8195
mGeneratorEvHF->Init();
8296
}
8397

@@ -393,4 +407,5 @@ FairGenerator * GeneratorPythia8EmbedHFCharmAndBeauty(float yQuarkMin = -1.5, fl
393407
myGen->setupGeneratorEvHF(hf_generators::GapTriggeredCharmAndBeauty, yQuarkMin, yQuarkMax, yHadronMin, yHadronMax, hadronPdgList);
394408

395409
return myGen;
396-
}
410+
}
411+

MC/config/PWGHF/external/generator/generator_pythia8_gaptriggered_hf.C

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,14 @@ public:
7575
mHadRapidityMin = yMin;
7676
mHadRapidityMax = yMax;
7777
};
78+
void setUsedSeed(unsigned int seed)
79+
{
80+
mUsedSeed = seed;
81+
};
82+
unsigned int getUsedSeed() const
83+
{
84+
return mUsedSeed;
85+
};
7886

7987
protected:
8088
//__________________________________________________________________
@@ -200,6 +208,7 @@ private:
200208
int mHadronPdg;
201209
float mHadRapidityMin;
202210
float mHadRapidityMax;
211+
unsigned int mUsedSeed;
203212

204213
// Control gap-triggering
205214
unsigned long long mGeneratedEvents;
@@ -218,6 +227,7 @@ FairGenerator *GeneratorPythia8GapTriggeredCharm(int inputTriggerRatio, float yQ
218227
{
219228
auto myGen = new GeneratorPythia8GapTriggeredHF(inputTriggerRatio, std::vector<int>{4}, hadronPdgList);
220229
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
230+
myGen->setUsedSeed(seed);
221231
myGen->readString("Random:setSeed on");
222232
myGen->readString("Random:seed " + std::to_string(seed));
223233
myGen->setQuarkRapidity(yQuarkMin, yQuarkMax);
@@ -233,6 +243,7 @@ FairGenerator *GeneratorPythia8GapTriggeredBeauty(int inputTriggerRatio, float y
233243
{
234244
auto myGen = new GeneratorPythia8GapTriggeredHF(inputTriggerRatio, std::vector<int>{5}, hadronPdgList);
235245
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
246+
myGen->setUsedSeed(seed);
236247
myGen->readString("Random:setSeed on");
237248
myGen->readString("Random:seed " + std::to_string(seed));
238249
myGen->setQuarkRapidity(yQuarkMin, yQuarkMax);
@@ -248,6 +259,7 @@ FairGenerator *GeneratorPythia8GapTriggeredCharmAndBeauty(int inputTriggerRatio,
248259
{
249260
auto myGen = new GeneratorPythia8GapTriggeredHF(inputTriggerRatio, std::vector<int>{4, 5}, hadronPdgList);
250261
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
262+
myGen->setUsedSeed(seed);
251263
myGen->readString("Random:setSeed on");
252264
myGen->readString("Random:seed " + std::to_string(seed));
253265
myGen->setQuarkRapidity(yQuarkMin, yQuarkMax);
@@ -266,6 +278,7 @@ FairGenerator *GeneratorPythia8GapHF(int inputTriggerRatio, float yQuarkMin = -1
266278
}
267279
auto myGen = new GeneratorPythia8GapTriggeredHF(inputTriggerRatio, quarkPdgList, hadronPdgList);
268280
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
281+
myGen->setUsedSeed(seed);
269282
myGen->readString("Random:setSeed on");
270283
myGen->readString("Random:seed " + std::to_string(seed));
271284
myGen->setQuarkRapidity(yQuarkMin, yQuarkMax);

0 commit comments

Comments
 (0)