Skip to content

Commit 31a513b

Browse files
committed
Removed shadowing + added sigmaHard for < 9.7 TeV systems
1 parent f0c363e commit 31a513b

1 file changed

Lines changed: 6 additions & 21 deletions

File tree

‎MC/config/common/external/generator/GeneratorHGPythia8.C‎

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,6 @@ class GeneratorHGPythia8 : public GeneratorPythia8
7373
void setSigmaHard(double sigma) { mSigmaHardIn = sigma; }
7474
/// Soft NN cross-section in mb
7575
void setSigmaSoft(double sigma) { mSigmaSoft = sigma; }
76-
/// Impact-parameter dependent shadowing of the hard cross-section
77-
void setShadowing(bool val) { mShadowing = val; }
7876
/// Include elastic NN scattering in the eikonal
7977
void setElastic(bool val) { mElastic = val; }
8078

@@ -128,8 +126,7 @@ class GeneratorHGPythia8 : public GeneratorPythia8
128126

129127
LOG(info) << "GeneratorHGPythia8: A = " << mA << ", B = " << mB << ", sqrt(s_NN) = " << energy
130128
<< " GeV, sigma_hard = " << mSigmaHard << " mb, sigma_soft = " << mSigmaSoft
131-
<< " mb, b in [" << mBMin << ", " << mBMax << "] fm, shadowing " << mShadowing
132-
<< ", elastic " << mElastic;
129+
<< " mb, b in [" << mBMin << ", " << mBMax << "] fm, elastic " << mElastic;
133130
return true;
134131
}
135132

@@ -212,13 +209,6 @@ class GeneratorHGPythia8 : public GeneratorPythia8
212209
/// Hard cross-section (pT > 2 GeV) in mb as a function of sqrt(s_NN), from the reference implementation
213210
double sigmaHardFromTable(double energy) const
214211
{
215-
if (mShadowing) {
216-
if (energy < 201) return 7.71968269;
217-
if (energy < 2800) return 39.5451393;
218-
if (energy < 5100) return 54.2068253;
219-
if (energy < 8100) return 69.7713470;
220-
return -1;
221-
}
222212
if (energy < 20) return 0.161440969;
223213
if (energy < 40) return 1.07414019;
224214
if (energy < 64) return 2.32993174;
@@ -228,6 +218,7 @@ class GeneratorHGPythia8 : public GeneratorPythia8
228218
if (energy < 5500) return 130.82;
229219
if (energy < 6400) return 144.17;
230220
if (energy < 8100) return 166.184998;
221+
if (energy < 9700) return 180.87;
231222
return -1;
232223
}
233224

@@ -323,11 +314,7 @@ class GeneratorHGPythia8 : public GeneratorPythia8
323314
std::fill(mWounded[j].begin(), mWounded[j].end(), 0);
324315
std::fill(mWoundedBlackDisc[j].begin(), mWoundedBlackDisc[j].end(), 0);
325316
}
326-
// shadowing of the hard cross-section depends on b only
327-
const double rrb = TMath::Min(1., b * b / 35.2 / 1.44);
328-
const double aphx = 0.1 * 4. / 3. * 4.92 * TMath::Sqrt(1. - rrb);
329-
const double sigHS = mShadowing ? mSigmaHard - aphx * 103.65 : mSigmaHard;
330-
const double gstot0 = mElastic ? 2. * (1. - TMath::Exp(-(mSigmaSoft + sigHS) / mSigmaSoft * eikonal(0.001))) : 1.;
317+
const double gstot0 = mElastic ? 2. * (1. - TMath::Exp(-(mSigmaSoft + mSigmaHard) / mSigmaSoft * eikonal(0.001))) : 1.;
331318

332319
mImpactParameter = b;
333320
mNcoll = mNcollHard = mNhard = mNcollBlackDisc = 0;
@@ -348,7 +335,7 @@ class GeneratorHGPythia8 : public GeneratorPythia8
348335
r2 /= b02;
349336
r2 /= gstot0;
350337
const double chi = eikonal(TMath::Sqrt(r2));
351-
const double gs = 1. - TMath::Exp(-2. * (mSigmaSoft + sigHS) / mSigmaSoft * chi);
338+
const double gs = 1. - TMath::Exp(-2. * (mSigmaSoft + mSigmaHard) / mSigmaSoft * chi);
352339
const double gstot = 2. * (1. - TMath::Sqrt(1. - gs));
353340
const double rantot = mRandom->Rndm() * gstot0;
354341
if (rantot > gstot && mElastic) {
@@ -361,7 +348,7 @@ class GeneratorHGPythia8 : public GeneratorPythia8
361348
mWounded[1][j] = 1;
362349
mNcoll++;
363350
// minijets
364-
const double tt = 2. * chi * sigHS / mSigmaSoft;
351+
const double tt = 2. * chi * mSigmaHard / mSigmaSoft;
365352
const double ts = 2. * chi;
366353
if (rantot < TMath::Exp(-tt) * (1. - TMath::Exp(-ts))) {
367354
nMPI[0]++;
@@ -416,7 +403,6 @@ class GeneratorHGPythia8 : public GeneratorPythia8
416403
double mSigmaHardIn = -1.;
417404
double mSigmaHard = -1.;
418405
double mSigmaSoft = 57.;
419-
bool mShadowing = false;
420406
bool mElastic = false;
421407

422408
// Glauber state
@@ -448,13 +434,12 @@ class GeneratorHGPythia8 : public GeneratorPythia8
448434
/// sigmaHard < 0: hard cross-section from the built-in sqrt(s_NN) table (up to 8.1 TeV).
449435
FairGenerator* generateHGPythia8(int A = 208, int B = 208, double bMin = 0., double bMax = -1.,
450436
double sigmaHard = -1., double sigmaSoft = 57.,
451-
bool shadowing = false, bool elastic = false)
437+
bool elastic = false)
452438
{
453439
auto gen = new o2::eventgen::GeneratorHGPythia8(A, B);
454440
gen->setImpactParameterRange(bMin, bMax);
455441
gen->setSigmaHard(sigmaHard);
456442
gen->setSigmaSoft(sigmaSoft);
457-
gen->setShadowing(shadowing);
458443
gen->setElastic(elastic);
459444
return gen;
460445
}

0 commit comments

Comments
 (0)