Skip to content

Commit

Permalink
ALICE 3: Add xicc injector for pp and PbPb (#1688)
Browse files Browse the repository at this point in the history
* PbPb and pp configurations with xicc gun

* Adjust test files

* Update generators

* Update generators

* Update generators

* Update generators

* Update generators

* Edited misprint

* Update generators

* Update generator
  • Loading branch information
jesgum authored Jul 29, 2024
1 parent 26bb981 commit 239cd66
Show file tree
Hide file tree
Showing 9 changed files with 1,139 additions and 0 deletions.
26 changes: 26 additions & 0 deletions MC/config/ALICE3/ini/tests/xicc_PbPb.C
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
int External()
{
std::string path{"o2sim_Kine.root"};

TFile file(path.c_str(), "READ");
if (file.IsZombie()) {
std::cerr << "Cannot open ROOT file " << path << "\n";
return 1;
}

auto tree = (TTree *)file.Get("o2sim");
if (!tree) {
std::cerr << "Cannot find tree o2sim in file " << path << "\n";
return 1;
}
std::vector<o2::MCTrack> *tracks{};
tree->SetBranchAddress("MCTrack", &tracks);

auto nEvents = tree->GetEntries();
auto nSelected = tree->Scan("MCTrack.GetPdgCode()", "MCTrack.GetPdgCode() == 4422");
if (nSelected == 0) {
std::cerr << "No event of interest\n";
return 1;
}
return 0;
}
26 changes: 26 additions & 0 deletions MC/config/ALICE3/ini/tests/xicc_pp.C
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
int External()
{
std::string path{"o2sim_Kine.root"};

TFile file(path.c_str(), "READ");
if (file.IsZombie()) {
std::cerr << "Cannot open ROOT file " << path << "\n";
return 1;
}

auto tree = (TTree *)file.Get("o2sim");
if (!tree) {
std::cerr << "Cannot find tree o2sim in file " << path << "\n";
return 1;
}
std::vector<o2::MCTrack> *tracks{};
tree->SetBranchAddress("MCTrack", &tracks);

auto nEvents = tree->GetEntries();
auto nSelected = tree->Scan("MCTrack.GetPdgCode()", "MCTrack.GetPdgCode() == 4422");
if (nSelected == 0) {
std::cerr << "No event of interest\n";
return 1;
}
return 0;
}
6 changes: 6 additions & 0 deletions MC/config/ALICE3/ini/xicc_PbPb.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[GeneratorExternal]
fileName=${O2DPG_ROOT}/MC/config/ALICE3/pythia8/generator_pythia8_gun_PbPb.C
funcName=generateNativeXiCC()

[GeneratorPythia8]
config=${O2DPG_ROOT}/MC/config/ALICE3/pythia8/generator/config_custom_xicc.cfg
6 changes: 6 additions & 0 deletions MC/config/ALICE3/ini/xicc_pp.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[GeneratorExternal]
fileName=${O2DPG_ROOT}/MC/config/ALICE3/pythia8/generator_pythia8_gun_pp.C
funcName=generateNativeXiCC()

[GeneratorPythia8]
config=${O2DPG_ROOT}/MC/config/ALICE3/pythia8/generator/config_custom_xicc.cfg
51 changes: 51 additions & 0 deletions MC/config/ALICE3/pythia8/generator/config_custom_xicc.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
### Xi_c
#4232:all = Xic+ Xic- 2 3 0 2.46793 0. 0. 0. 10
4422:all = XiCC AntiXiCC 2 6 0 3.6212 0. 0. 0. 10

### Omega_c
#4332:all = Omega_c0 Omega_cbar0 2 0 0 2.69520 0. 0. 0. 10
4432:all = Omega_cc Omega_ccbar 2 3 0 3.746 0. 0. 0. 10
4444:all = Omega_ccc Omega_cccbar 4 6 0 4.797 0. 0. 0. 10

ProcessLevel:all = off

### changing the ctau value in mm/c
### use scaling based on Lambda, Xi, Omega progression
4332:tau0=0.08000000000
4432:tau0=0.04980000000
4444:tau0=0.02496000000
4422:tau0=0.07675
4232:tau0=0.132

### add OmegaC decay absent in PYTHIA8 decay table
4332:addChannel = 1 1 0 3334 211
4432:addChannel = 1 1 0 4332 211
4444:oneChannel = 1 1 0 4432 211

4422:addChannel = 1 1 0 4232 211
4422:onMode = off
4422:onIfMatch = 4232 211

### add OmegaC decay absent in PYTHIA8 decay table
4232:addChannel = 1 0.0001 0 3312 211 211
4232:onMode = off
4232:onIfMatch = 3312 211 211

### force the OmegaC to decay in the Omega_c -> Omega pi channel
4332:onMode = off
4332:onIfMatch = 3334 211
4432:onMode = off
4432:onIfMatch = 4332 211
4444:onMode = off
4444:onIfMatch = 4432 211

#boundless decays
ParticleDecays:limitTau0 off

#do other decays via geant3, etc
310:onMode = off
3122:onMode = off
3112:onMode = off
3222:onMode = off
3312:onMode = off
3334:onMode = off
21 changes: 21 additions & 0 deletions MC/config/ALICE3/pythia8/generator/pythia8_hi.cmnd
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
### beams
Beams:idA 1000822080 # Pb
Beams:idB 1000822080 # Pb
Beams:eCM 5520. # GeV

### heavy-ion settings (valid for Pb-Pb 5520 only)
HeavyIon:SigFitNGen = 0
HeavyIon:SigFitDefPar = 13.88,1.84,0.22,0.0,0.0,0.0,0.0,0.0
HeavyIon:bWidth = 14.48

### processes (apparently not to be defined)

### decays
ParticleDecays:limitTau0 on
ParticleDecays:tau0Max 0.001

! 2) Seed settings
! Seed is set inside the generator
! If run on the grid, seed is set to job id
! If run locally, seed is set to 0
Random:setSeed = on ! Random seed on
61 changes: 61 additions & 0 deletions MC/config/ALICE3/pythia8/generator/pythia8_pp.cmnd
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
! WithMPI_MPIBased.cmnd.
! This file contains the More QCD scheme colour reconnection settings scenario
! to be read in for a Pythia8 run.
! Lines beginning with a "!" are comments.
! Author: Renan Acconcia

!pythia default
!Last update: 01/08/2018
!Only Inelastic events: INEL

! 1) Settings related to output in init(), next() and stat().
Init:showChangedSettings = on ! list changed settings
!Init:showChangedParticleData = off ! list changed particle data
!Next:numberCount = 0 ! print message every n events
!Next:numberShowInfo = 0 ! print event information n times
!Next:numberShowProcess = 1 ! print process record n times
!Next:numberShowEvent = 1 ! print event record n times

! 2) Seed settings
! Seed is set inside the generator
! If run on the grid, seed is set to job id
! If run locally, seed is set to 0
Random:setSeed = on ! Random seed on

! 3) Tunes settings
! Tune:preferLHAPDF = 2 ! Using LHAPDF 6
StringPT:sigma = 0.335
StringZ:aLund = 0.36
StringZ:bLund = 0.56
StringFlav:probQQtoQ = 0.078
StringFlav:ProbStoUD = 0.2
StringFlav:probQQ1toQQ0join = 0.0275,0.0275,0.0275,0.0275

MultiPartonInteractions:pT0Ref = 2.12

BeamRemnants:remnantMode = 1
BeamRemnants:saturation = 5

ColourReconnection:mode = 1
ColourReconnection:allowDoubleJunRem = off
ColourReconnection:m0 = 2.9
ColourReconnection:allowJunctions = on
ColourReconnection:junctionCorrection = 1.43
ColourReconnection:timeDilationMode = 0

! 5) Settings for the softQCD-process generation. NSD scenario.
SoftQCD:nonDiffractive = on ! Non Diffractive on
SoftQCD:singleDiffractive = on ! Single Diffractive on
SoftQCD:doubleDiffractive = on ! Double Diffractive on
SoftQCD:centralDiffractive = on ! Central Diffractive on
SoftQCD:elastic = off ! Elastic off

! 6) Decay Supression
ParticleDecays:limitTau0 = on ! Only particles with tau0 < tau0Max are decayed.
ParticleDecays:tau0Max = 0.001 ! Tau0Max = 3. mm/c

! 7) Beam parameter settings. Values below agree with default ones.
!this is default do not need to be specified
Beams:idA = 2212 ! first beam, p = 2212, pbar = -2212
Beams:idB = 2212 ! second beam, p = 2212, pbar = -2212
Beams:eCM = 14000.0 //energy
Loading

0 comments on commit 239cd66

Please sign in to comment.