Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[GeneratorExternal]
fileName = ${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/external/generator/Generator_pythia8_GapTriggered_DYll.C
funcName = GeneratorPythia8GapTriggeredDYll(2, 1, 11, -1.5, +1.5, 1000080160, 1000080160, 5360.0)

[GeneratorPythia8]
config = ${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/configPythiaEmpty.cfg
includePartonEvent = true
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
int External() {
std::string path{"o2sim_Kine.root"};
// Check that file exists, can be opened and has the correct tree
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);

// Check if all events are filled
auto nEvents = tree->GetEntries();
for (Long64_t i = 0; i < nEvents; ++i)
{
tree->GetEntry(i);
if (tracks->empty())
{
std::cerr << "Empty entry found at event " << i << "\n";
return 1;
}
}
// check if each event has at least two oxygen ions
for (int i = 0; i < nEvents; i++)
{
auto check = tree->GetEntry(i);
int count = 0;
for (int idxMCTrack = 0; idxMCTrack < tracks->size(); ++idxMCTrack)
{
auto track = tracks->at(idxMCTrack);
if (track.GetPdgCode() == 1000080160)
{
count++;
}
}
if (count < 2)
{
std::cerr << "Event " << i << " has less than 2 oxygen ions\n";
return 1;
}
}

return 0;
}

int pythia8()
{
return External();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
int External() {
std::string path{"o2sim_Kine.root"};
// Check that file exists, can be opened and has the correct tree
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);

// Check if all events are filled
auto nEvents = tree->GetEntries();
for (Long64_t i = 0; i < nEvents; ++i)
{
tree->GetEntry(i);
if (tracks->empty())
{
std::cerr << "Empty entry found at event " << i << "\n";
return 1;
}
}
// check if each event has at least two oxygen ions
for (int i = 0; i < nEvents; i++)
{
auto check = tree->GetEntry(i);
int count = 0;
for (int idxMCTrack = 0; idxMCTrack < tracks->size(); ++idxMCTrack)
{
auto track = tracks->at(idxMCTrack);
if (track.GetPdgCode() == 1000080160)
{
count++;
}
}
if (count < 2)
{
std::cerr << "Event " << i << " has less than 2 oxygen ions\n";
return 1;
}
}

return 0;
}

int pythia8()
{
return External();
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,97 +30,73 @@ MultiPartonInteractions:pT0Ref = 2.15
BeamRemnants:remnantMode = 1
BeamRemnants:saturation =5

### only semileptonic decays from https://pdg.lbl.gov/2025/
### only semileptonic decays for charm
### D+
411:oneChannel = 1 0.08810 0 -311 -11 12
#411:addChannel = 1 0.04020 0 -321 211 -11 12 # may be double counting
411:addChannel = 1 0.05400 0 -313 -11 12
411:addChannel = 1 0.00372 0 111 -11 12
411:addChannel = 1 0.00111 0 221 -11 12
411:addChannel = 1 0.00187 0 113 -11 12
411:addChannel = 1 0.00169 0 223 -11 12
411:addChannel = 1 0.00020 0 331 -11 12
411:oneChannel = 1 0.087 0 -311 -11 12
411:addChannel = 1 0.040 0 -321 211 -11 12
411:addChannel = 1 0.037 0 -313 -11 12
### D0
421:oneChannel = 1 0.0354 0 -321 -11 12
421:addChannel = 1 0.0216 0 -323 -11 12
#421:addChannel = 1 0.0160 0 -321 111 -11 12 # may be double counting
#421:addChannel = 1 0.0144 0 -311 211 -11 12 # may be double counting
421:addChannel = 1 0.00291 0 -211 -11 12
421:addChannel = 1 0.00145 0 -211 111 -11 12
421:addChannel = 1 0.00146 0 -213 -11 12
421:oneChannel = 1 0.035 0 -321 -11 12
421:addChannel = 1 0.022 0 -323 -11 12
421:addChannel = 1 0.016 0 -321 111 -11 12
421:addChannel = 1 0.014 0 -311 -211 -11 12
### Ds
431:oneChannel = 1 0.0234 0 333 -11 12
431:addChannel = 1 0.0227 0 221 -11 12
431:addChannel = 1 0.0081 0 331 -11 12
431:addChannel = 1 0.0029 0 311 -11 12
431:addChannel = 1 0.0021 0 313 -11 12
431:oneChannel = 1 0.025 0 333 -11 12
431:addChannel = 1 0.027 0 221 -11 12
### Lambdac
4122:oneChannel = 1 0.0356 0 3122 -11 12
4122:oneChannel = 1 0.0009 0 2212 -321 -11 12
4122:oneChannel = 1 0.0010 0 3124 -11 12
4122:oneChannel = 1 0.0004 0 3126 -11 12
### Xi_{c}^{+}
4122:oneChannel = 1 0.036 0 3122 -11 12
### chi_{c}^{+}
4232:oneChannel = 1 0.07 0 3322 -11 12
### Xi_{c}^{0}
4132:oneChannel = 1 0.0105 0 3312 -11 12
### chi_{c}^{0}
4132:oneChannel = 1 0.014 0 3312 -11 12
### Omega_{c}
4332:oneChannel = 1 0.01224 0 3334 -11 12

### only semileptonic decays for beauty from https://pdg.lbl.gov/2025/
### only semileptonic decays for beauty
### B0
511:oneChannel = 1 0.021000 0 12 -11 -411
511:addChannel = 1 0.048700 0 12 -11 -413
511:addChannel = 1 0.002300 0 12 -11 -415
511:addChannel = 1 0.000150 0 12 -11 -211
511:addChannel = 1 0.000294 0 12 -11 -213
#511:addChannel = 1 0.004500 0 12 -11 -10411
#511:addChannel = 1 0.005200 0 12 -11 -10413
#511:addChannel = 1 0.008300 0 12 -11 -20413
511:addChannel = 1 0.003640 0 12 -11 -421 -211
511:addChannel = 1 0.005440 0 12 -11 -423 -211
511:addChannel = 1 0.001450 0 12 -11 -411 -211 211
511:addChannel = 1 0.000510 0 12 -11 -413 -211 211
511:oneChannel = 1 0.0207000 0 12 -11 -411
511:addChannel = 1 0.0570000 0 12 -11 -413
511:addChannel = 1 0.0023000 0 12 -11 -415
511:addChannel = 1 0.0001330 0 12 -11 -211
511:addChannel = 1 0.0002690 0 12 -11 -213
511:addChannel = 1 0.0045000 0 12 -11 -10411
511:addChannel = 1 0.0052000 0 12 -11 -10413
511:addChannel = 1 0.0083000 0 12 -11 -20413

### B+
521:oneChannel = 1 0.000078 0 12 -11 111
521:addChannel = 1 0.000158 0 12 -11 113
521:addChannel = 1 0.000035 0 12 -11 221
521:addChannel = 1 0.000119 0 12 -11 223
521:addChannel = 1 0.000024 0 12 -11 331
521:addChannel = 1 0.022600 0 12 -11 -421
521:addChannel = 1 0.052600 0 12 -11 -423
521:addChannel = 1 0.001590 0 12 -11 -425
#521:addChannel = 1 0.000900 0 12 -11 -10421
#521:addChannel = 1 0.002840 0 12 -11 -10423
#521:addChannel = 1 0.001700 0 12 -11 -20423
521:addChannel = 1 0.003820 0 12 -11 -411 211
521:addChannel = 1 0.005420 0 12 -11 -413 211
521:addChannel = 1 0.001730 0 12 -11 -421 -211 211
521:addChannel = 1 0.000700 0 12 -11 -423 -211 211
521:addChannel = 1 0.000300 0 12 -11 -431 321
521:addChannel = 1 0.000290 0 12 -11 -433 321
521:oneChannel = 1 0.0000720 0 12 -11 111
521:addChannel = 1 0.0001450 0 12 -11 113
521:addChannel = 1 0.0000840 0 12 -11 221
521:addChannel = 1 0.0001450 0 12 -11 223
521:addChannel = 1 0.0000840 0 12 -11 331
521:addChannel = 1 0.0224000 0 12 -11 -421
521:addChannel = 1 0.0617000 0 12 -11 -423
521:addChannel = 1 0.0030000 0 12 -11 -425
521:addChannel = 1 0.0049000 0 12 -11 -10421
521:addChannel = 1 0.0056000 0 12 -11 -10423
521:addChannel = 1 0.0090000 0 12 -11 -20423

### Bs
531:oneChannel = 1 0.000106 0 12 -11 -321
531:addChannel = 1 0.000300 0 12 -11 -323
531:addChannel = 1 0.022900 0 12 -11 -431
531:addChannel = 1 0.052000 0 12 -11 -433
531:addChannel = 1 0.007000 0 12 -11 -435
531:addChannel = 1 0.000300 0 12 -11 -10323
531:addChannel = 1 0.004000 0 12 -11 -10431
531:addChannel = 1 0.007000 0 12 -11 -10433
531:addChannel = 1 0.000200 0 12 -11 -20323
531:addChannel = 1 0.004000 0 12 -11 -20433
531:oneChannel = 1 0.0002000 0 12 -11 -321
531:addChannel = 1 0.0003000 0 12 -11 -323
531:addChannel = 1 0.0210000 0 12 -11 -431
531:addChannel = 1 0.0490000 0 12 -11 -433
531:addChannel = 1 0.0070000 0 12 -11 -435
531:addChannel = 1 0.0003000 0 12 -11 -10323
531:addChannel = 1 0.0040000 0 12 -11 -10431
531:addChannel = 1 0.0070000 0 12 -11 -10433
531:addChannel = 1 0.0002000 0 12 -11 -20323
531:addChannel = 1 0.0040000 0 12 -11 -20433

### Lambdab
5122:oneChannel = 1 0.0546000 0 -12 11 4122
5122:addChannel = 1 0.0096000 0 -12 11 4124
5122:addChannel = 1 0.0128000 0 -12 11 14122

### Xi_{b}^{-}
### Chi_{b}^{-}
5132:oneChannel = 1 0.1080010 0 -12 11 4 3101
5132:addChannel = 1 0.0020000 0 -12 11 2 3101
### Xi_{b}^{0}
### Chi_{b}^{0}
5232:oneChannel = 1 0.1080010 0 -12 11 4 3201
5232:addChannel = 1 0.0020000 0 -12 11 2 3201
### Omega_{b}^{-}
Expand All @@ -132,4 +108,3 @@ BeamRemnants:saturation =5
4332:tau0 = 0.08000000000
# Correct Lb decay length (wrong in PYTHIA8 decay table)
5122:tau0 = 4.41000e-01

Original file line number Diff line number Diff line change
Expand Up @@ -36,39 +36,24 @@ MultiPartonInteractions:pT0Ref = 2.15
BeamRemnants:remnantMode = 1
BeamRemnants:saturation =5

### only semileptonic decays from https://pdg.lbl.gov/2025/
### only semileptonic decays
### D+
411:oneChannel = 1 0.08810 0 -311 -11 12
#411:addChannel = 1 0.04020 0 -321 211 -11 12 # may be double counting
411:addChannel = 1 0.05400 0 -313 -11 12
411:addChannel = 1 0.00372 0 111 -11 12
411:addChannel = 1 0.00111 0 221 -11 12
411:addChannel = 1 0.00187 0 113 -11 12
411:addChannel = 1 0.00169 0 223 -11 12
411:addChannel = 1 0.00020 0 331 -11 12
411:oneChannel = 1 0.087 0 -311 -11 12
411:addChannel = 1 0.040 0 -321 211 -11 12
411:addChannel = 1 0.037 0 -313 -11 12
### D0
421:oneChannel = 1 0.0354 0 -321 -11 12
421:addChannel = 1 0.0216 0 -323 -11 12
#421:addChannel = 1 0.0160 0 -321 111 -11 12 # may be double counting
#421:addChannel = 1 0.0144 0 -311 211 -11 12 # may be double counting
421:addChannel = 1 0.00291 0 -211 -11 12
421:addChannel = 1 0.00145 0 -211 111 -11 12
421:addChannel = 1 0.00146 0 -213 -11 12
421:oneChannel = 1 0.035 0 -321 -11 12
421:addChannel = 1 0.022 0 -323 -11 12
421:addChannel = 1 0.016 0 -321 111 -11 12
### Ds
431:oneChannel = 1 0.0234 0 333 -11 12
431:addChannel = 1 0.0227 0 221 -11 12
431:addChannel = 1 0.0081 0 331 -11 12
431:addChannel = 1 0.0029 0 311 -11 12
431:addChannel = 1 0.0021 0 313 -11 12
431:oneChannel = 1 0.025 0 333 -11 12
431:addChannel = 1 0.027 0 221 -11 12
### Lambdac
4122:oneChannel = 1 0.0356 0 3122 -11 12
4122:oneChannel = 1 0.0009 0 2212 -321 -11 12
4122:oneChannel = 1 0.0010 0 3124 -11 12
4122:oneChannel = 1 0.0004 0 3126 -11 12
### Xi_{c}^{+}
4122:oneChannel = 1 0.036 0 3122 -11 12
### chi_{c}^{+}
4232:oneChannel = 1 0.07 0 3322 -11 12
### Xi_{c}^{0}
4132:oneChannel = 1 0.0105 0 3312 -11 12
### chi_{c}^{0}
4132:oneChannel = 1 0.014 0 3312 -11 12
### Omega_{c}
4332:oneChannel = 1 0.01224 0 3334 -11 12

Expand Down
52 changes: 52 additions & 0 deletions MC/run/PWGEM/runAnchoredDYee_OO_5360_Gap2.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/bin/bash

#
# Steering script for HF enhanced dielectron MC anchored to LHC25ae
#

# example anchoring

export ALIEN_JDL_LPMANCHORPASSNAME=apass2
export ALIEN_JDL_MCANCHOR=apass2
export ALIEN_JDL_CPULIMIT=8
export ALIEN_JDL_LPMRUNNUMBER=564356
export ALIEN_JDL_LPMPRODUCTIONTYPE=MC
export ALIEN_JDL_LPMINTERACTIONTYPE=pp
export ALIEN_JDL_LPMPRODUCTIONTAG=LHC26a2
export ALIEN_JDL_LPMANCHORRUN=564356
export ALIEN_JDL_LPMANCHORPRODUCTION=LHC25ae
export ALIEN_JDL_LPMANCHORYEAR=2025
export ALIEN_JDL_OUTPUT=*.dat@disk=1,*.txt@disk=1,*.root@disk=2

export NTIMEFRAMES=1
export NSIGEVENTS=20
export SPLITID=100
export PRODSPLIT=153
export CYCLE=0

# on the GRID, this is set and used as seed; when set, it takes precedence over SEED
#export ALIEN_PROC_ID=2963436952
export SEED=0

# for pp and 50 events per TF, we launch only 4 workers.
export NWORKERS=2

# define the generator via ini file
# use 30/70 sampling for different generators
# No forced beauty decays as we have observed biases

# generate random number
RNDSIG=$(($RANDOM % 100))

CONFIGNAME="GeneratorDYee_GapTriggered_Gap2_OO5360GeV.ini"

export ALIEN_JDL_ANCHOR_SIM_OPTIONS="-gen external -ini $O2DPG_ROOT/MC/config/PWGEM/ini/$CONFIGNAME"

# run the central anchor steering script; this includes
# * derive timestamp
# * derive interaction rate
# * extract and prepare configurations (which detectors are contained in the run etc.)
# * run the simulation (and QC)
# To disable QC, uncomment the following line
#export DISABLE_QC=1
${O2DPG_ROOT}/MC/run/ANCHOR/anchorMC.sh
Loading
Loading