Skip to content

Commit 4464f90

Browse files
authored
Merge 7c19b39 into sapling-pr-archive-ehellbar
2 parents ef82718 + 7c19b39 commit 4464f90

50 files changed

Lines changed: 2505 additions & 191 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

DATA/production/configurations/asyncReco/async_pass.sh

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -445,9 +445,17 @@ if [[ $ASYNC_PASS_NO_OPTIMIZED_DEFAULTS != 1 ]]; then
445445
fi
446446
else
447447
if [[ $BEAMTYPE == "pp" ]]; then
448-
export OPTIMIZED_PARALLEL_ASYNC=pp_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA, 4 gpu per job, pp)
448+
if [[ $ALIEN_JDL_SITEARCH =~ ^EPN ]]; then
449+
export OPTIMIZED_PARALLEL_ASYNC=pp_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA, 4 gpu per job, pp)
450+
else
451+
export OPTIMIZED_PARALLEL_ASYNC=pp_gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 gpu per job, pp)
452+
fi
449453
else # PbPb
450-
export OPTIMIZED_PARALLEL_ASYNC=PbPb_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA 4 gpu per job, PbPb)
454+
if [[ $ALIEN_JDL_SITEARCH =~ ^EPN ]]; then
455+
export OPTIMIZED_PARALLEL_ASYNC=PbPb_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA 4 gpu per job, PbPb)
456+
else
457+
export OPTIMIZED_PARALLEL_ASYNC=PbPb_gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 gpu per job, PbPb)
458+
fi
451459
fi
452460
fi
453461
else
@@ -484,6 +492,12 @@ WORKFLOW_DETECTORS_EXCLUDE_QC_SCRIPT=${ALIEN_JDL_WORKFLOWDETECTORSEXCLUDEQC:-}
484492
# print workflow
485493
if [[ $ALIEN_JDL_SSPLITWF != "1" ]]; then
486494
env $SETTING_ROOT_OUTPUT IS_SIMULATED_DATA=0 WORKFLOWMODE=print TFDELAY=$TFDELAYSECONDS WORKFLOW_DETECTORS_EXCLUDE_QC=$WORKFLOW_DETECTORS_EXCLUDE_QC_SCRIPT ./run-workflow-on-inputlist.sh $INPUT_TYPE list.list > workflowconfig.log
495+
exitcode=$?
496+
if [[ $exitcode -ne 0 ]]; then
497+
echo "exit code from printing workflow is $exitcode" > validation_error.message
498+
echo "exit code from printing workflow is $exitcode"
499+
exit $exitcode
500+
fi
487501
# run it
488502
if [[ "0$RUN_WORKFLOW" != "00" ]]; then
489503
timeStart=`date +%s`
@@ -524,6 +538,12 @@ else
524538
export WORKFLOW_PARAMETERS=$(echo $WORKFLOW_PARAMETERS | sed -e "s/,$i,/,/g" -e "s/^$i,//" -e "s/,$i"'$'"//" -e "s/^$i"'$'"//")
525539
done
526540
env DISABLE_ROOT_OUTPUT=0 IS_SIMULATED_DATA=0 WORKFLOWMODE=print TFDELAY=$TFDELAYSECONDS WORKFLOW_DETECTORS=TPC,CTP WORKFLOW_DETECTORS_MATCHING= ./run-workflow-on-inputlist.sh $INPUT_TYPE list.list >> workflowconfig.log
541+
exitcode=$?
542+
if [[ $exitcode -ne 0 ]]; then
543+
echo "exit code from printing workflow (Step 1) is $exitcode" > validation_error.message
544+
echo "exit code from printing workflow (Step 1) is $exitcode"
545+
exit $exitcode
546+
fi
527547
# run it
528548
if [[ "0$RUN_WORKFLOW" != "00" ]]; then
529549
timeStart=`date +%s`
@@ -562,6 +582,12 @@ else
562582
export WORKFLOW_PARAMETERS=$(echo $WORKFLOW_PARAMETERS | sed -e "s/,$i,/,/g" -e "s/^$i,//" -e "s/,$i"'$'"//" -e "s/^$i"'$'"//")
563583
done
564584
env DISABLE_ROOT_OUTPUT=0 IS_SIMULATED_DATA=0 WORKFLOWMODE=print TFDELAY=$TFDELAYSECONDS WORKFLOW_DETECTORS=ALL WORKFLOW_DETECTORS_EXCLUDE=TPC,$DETECTORS_EXCLUDE WORKFLOW_DETECTORS_MATCHING= ./run-workflow-on-inputlist.sh $INPUT_TYPE list.list >> workflowconfig.log
585+
exitcode=$?
586+
if [[ $exitcode -ne 0 ]]; then
587+
echo "exit code from printing workflow (Step 2) is $exitcode" > validation_error.message
588+
echo "exit code from printing workflow (Step 2) is $exitcode"
589+
exit $exitcode
590+
fi
565591
# run it
566592
if [[ "0$RUN_WORKFLOW" != "00" ]]; then
567593
timeStart=`date +%s`
@@ -647,6 +673,12 @@ else
647673
STEP_3_ROOT_OUTPUT=$SETTING_ROOT_OUTPUT
648674
fi
649675
env $STEP_3_ROOT_OUTPUT IS_SIMULATED_DATA=0 WORKFLOWMODE=print TFDELAY=$TFDELAYSECONDS WORKFLOW_DETECTORS=ALL WORKFLOW_DETECTORS_EXCLUDE=$DETECTORS_EXCLUDE WORKFLOW_DETECTORS_USE_GLOBAL_READER_TRACKS=$READ_TRACKS WORKFLOW_DETECTORS_USE_GLOBAL_READER_CLUSTERS=$READ_CLUSTERS WORKFLOW_DETECTORS_EXCLUDE_GLOBAL_READER_TRACKS=HMP WORKFLOW_DETECTORS_EXCLUDE_QC=$WORKFLOW_DETECTORS_EXCLUDE_QC_SCRIPT,$DETECTORS_EXCLUDE ./run-workflow-on-inputlist.sh $INPUT_TYPE list.list >> workflowconfig.log
676+
exitcode=$?
677+
if [[ $exitcode -ne 0 ]]; then
678+
echo "exit code from printing workflow (Step 3) is $exitcode" > validation_error.message
679+
echo "exit code from printing workflow (Step 3) is $exitcode"
680+
exit $exitcode
681+
fi
650682
# run it
651683
if [[ "0$RUN_WORKFLOW" != "00" ]]; then
652684
timeStart=`date +%s`
@@ -685,6 +717,12 @@ else
685717
WORKFLOW_DETECTORS_EXCLUDE_QC_SCRIPT+=",CPV"
686718
echo "QC_JSON_FROM_OUTSIDE = $QC_JSON_FROM_OUTSIDE"
687719
env $SETTING_ROOT_OUTPUT IS_SIMULATED_DATA=0 WORKFLOWMODE=print TFDELAY=$TFDELAYSECONDS WORKFLOW_DETECTORS=ALL WORKFLOW_DETECTORS_EXCLUDE=$DETECTORS_EXCLUDE WORKFLOW_DETECTORS_USE_GLOBAL_READER_TRACKS=$READ_TRACKS WORKFLOW_DETECTORS_USE_GLOBAL_READER_CLUSTERS=$READ_CLUSTERS WORKFLOW_DETECTORS_EXCLUDE_GLOBAL_READER_TRACKS= WORKFLOW_DETECTORS_EXCLUDE_QC=$WORKFLOW_DETECTORS_EXCLUDE_QC_SCRIPT,$DETECTORS_EXCLUDE ./run-workflow-on-inputlist.sh $INPUT_TYPE list.list >> workflowconfig.log
720+
exitcode=$?
721+
if [[ $exitcode -ne 0 ]]; then
722+
echo "exit code from printing workflow (Step 4) is $exitcode" > validation_error.message
723+
echo "exit code from printing workflow (Step 4) is $exitcode"
724+
exit $exitcode
725+
fi
688726
# run it
689727
if [[ "0$RUN_WORKFLOW" != "00" ]]; then
690728
timeStart=`date +%s`

DATA/production/configurations/asyncReco/setenv_extra.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,8 @@ if [[ "0$OLDVERSION" == "01" ]] && [[ $BEAMTYPE == "PbPb" || $PERIOD == "MAY" ||
336336
fi
337337
fi
338338

339+
EXTRA_PRIMVTX_TimeMargin=""
340+
339341
# some settings in common between workflows and affecting ITS-TPC matching
340342
: ${CUT_MATCH_CHI2:=250}
341343
if [[ $ALIGNLEVEL == 0 ]]; then
@@ -347,7 +349,12 @@ if [[ $ALIGNLEVEL == 0 ]]; then
347349
elif [[ $ALIGNLEVEL == 1 ]]; then
348350
ERRIB="100e-8"
349351
ERROB="100e-8"
350-
[[ -z $TPCITSTIMEERR ]] && TPCITSTIMEERR="0.2"
352+
if [[ $ALIEN_JDL_LPMANCHORYEAR == "2026" ]] ; then
353+
[[ -z $TPCITSTIMEERR ]] && TPCITSTIMEERR="0.05"
354+
EXTRA_PRIMVTX_TimeMargin="pvertexer.timeMarginVertexTime=0.3"
355+
else
356+
[[ -z $TPCITSTIMEERR ]] && TPCITSTIMEERR="0.2"
357+
fi
351358
if [[ $ALIEN_JDL_LPMANCHORYEAR == "2023" && $BEAMTYPE == "PbPb" && $ANCHORED_PASS_NUMBER -lt 5 ]] || [[ $PERIOD == "LHC24al" ]] ; then
352359
[[ $ALIEN_JDL_LPMANCHORYEAR == "2023" ]] && [[ $BEAMTYPE == "PbPb" ]] && CUT_MATCH_CHI2=80 || CUT_MATCH_CHI2=100
353360
export ITSTPCMATCH="tpcitsMatch.safeMarginTimeCorrErr=2.;tpcitsMatch.XMatchingRef=60.;tpcitsMatch.cutMatchingChi2=$CUT_MATCH_CHI2;;tpcitsMatch.crudeAbsDiffCut[0]=6;tpcitsMatch.crudeAbsDiffCut[1]=6;tpcitsMatch.crudeAbsDiffCut[2]=0.3;tpcitsMatch.crudeAbsDiffCut[3]=0.3;tpcitsMatch.crudeAbsDiffCut[4]=2.5;tpcitsMatch.crudeNSigma2Cut[0]=64;tpcitsMatch.crudeNSigma2Cut[1]=64;tpcitsMatch.crudeNSigma2Cut[2]=64;tpcitsMatch.crudeNSigma2Cut[3]=64;tpcitsMatch.crudeNSigma2Cut[4]=64;"
@@ -591,7 +598,6 @@ export ARGS_EXTRA_PROCESS_o2_tof_reco_workflow+=" --use-ccdb"
591598
# following comment https://alice.its.cern.ch/jira/browse/O2-2691?focusedCommentId=278262&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-278262
592599
#export PVERTEXER="pvertexer.acceptableScale2=9;pvertexer.minScale2=2.;pvertexer.nSigmaTimeTrack=4.;pvertexer.timeMarginTrackTime=0.5;pvertexer.timeMarginVertexTime=7.;pvertexer.nSigmaTimeCut=10;pvertexer.dbscanMaxDist2=36;pvertexer.dcaTolerance=3.;pvertexer.pullIniCut=100;pvertexer.addZSigma2=0.1;pvertexer.tukey=20.;pvertexer.addZSigma2Debris=0.01;pvertexer.addTimeSigma2Debris=1.;pvertexer.maxChi2Mean=30;pvertexer.timeMarginReattach=3.;pvertexer.addTimeSigma2Debris=1.;pvertexer.dbscanDeltaT=24;pvertexer.maxChi2TZDebris=100;pvertexer.maxMultRatDebris=1.;pvertexer.dbscanAdaptCoef=20.;pvertexer.timeMarginVertexTime=1.3"
593600
# updated on 7 Sept 2022
594-
EXTRA_PRIMVTX_TimeMargin=""
595601
if [[ $BEAMTYPE == "PbPb" || $PERIOD == "MAY" || $PERIOD == "JUN" || $PERIOD == LHC22* || $PERIOD == LHC23* ]]; then
596602
EXTRA_PRIMVTX_TimeMargin="pvertexer.timeMarginVertexTime=1.3"
597603
fi

DATA/production/qc-async/tpc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@
8383
"query": "inputTracks:TPC/TRACKS/0;inputClusters:TPC/CLUSTERNATIVE;inputClusRefs:TPC/CLUSREFS/0"
8484
},
8585
"taskParameters": {
86-
"cutAbsEta": "1.",
86+
"cutAbsEta": "1.5",
8787
"cutMinNCluster": "60",
8888
"cutMindEdxTot": "20.",
8989
"seed": "0",

DATA/production/qc-sync/tpc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@
106106
"name": "tpc-tracks"
107107
},
108108
"taskParameters": {
109-
"cutAbsEta": "1.",
109+
"cutAbsEta": "1.5",
110110
"cutMinNCluster": "60",
111111
"cutMindEdxTot": "20."
112112
},

DATA/production/qc-workflow.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,9 @@ elif [[ -z ${QC_JSON_FROM_OUTSIDE:-} ]]; then
7777
QC_JSON_TOF=apricot://o2/components/qc/ANY/any/tof-full-epn-qcmn-on-epn
7878
fi
7979
fi
80-
[[ -z "${QC_JSON_FDD:-}" ]] && QC_JSON_FDD=apricot://o2/components/qc/ANY/any/fdd-digits-qc-epn
81-
[[ -z "${QC_JSON_FT0:-}" ]] && QC_JSON_FT0=apricot://o2/components/qc/ANY/any/ft0-digits-qc-epn
82-
[[ -z "${QC_JSON_FV0:-}" ]] && QC_JSON_FV0=apricot://o2/components/qc/ANY/any/fv0-digits-qc-epn
80+
[[ -z "${QC_JSON_FDD:-}" ]] && QC_JSON_FDD=apricot://o2/components/qc/ANY/any/fdd-digits-qcmn-epn
81+
[[ -z "${QC_JSON_FT0:-}" ]] && QC_JSON_FT0=apricot://o2/components/qc/ANY/any/ft0-digits-qcmn-epn
82+
[[ -z "${QC_JSON_FV0:-}" ]] && QC_JSON_FV0=apricot://o2/components/qc/ANY/any/fv0-digits-qcmn-epn
8383
if [[ -z "${QC_JSON_EMC:-}" ]]; then
8484
if [[ "$BEAMTYPE" == "PbPb" ]]; then
8585
if has_detector CTP; then
@@ -117,6 +117,7 @@ elif [[ -z ${QC_JSON_FROM_OUTSIDE:-} ]]; then
117117
[[ -z "${QC_JSON_CPV:-}" ]] && QC_JSON_CPV=apricot://o2/components/qc/ANY/any/cpv-physics-qcmn-epn
118118
[[ -z "${QC_JSON_TRD:-}" ]] && QC_JSON_TRD=apricot://o2/components/qc/ANY/any/trd-full-qcmn
119119
[[ -z "${QC_JSON_PHS:-}" ]] && QC_JSON_PHS=apricot://o2/components/qc/ANY/any/phos-raw-clusters-epn
120+
[[ -z "${QC_JSON_CTP:-}" ]] && QC_JSON_CTP=apricot://o2/components/qc/ANY/any/ctp-raw-qc-epn
120121
[[ -z "${QC_JSON_GLO_PRIMVTX:-}" ]] && QC_JSON_GLO_PRIMVTX=apricot://o2/components/qc/ANY/any/glo-vtx-qcmn-epn
121122
[[ -z "${QC_JSON_GLO_ITSTPC:-}" ]] && QC_JSON_GLO_ITSTPC=apricot://o2/components/qc/ANY/any/glo-itstpc-mtch-qcmn-epn
122123
if [[ -z "${QC_JSON_TOF_MATCH:-}" ]]; then

MC/bin/o2dpg_sim_workflow.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -615,7 +615,7 @@ def getDPL_global_options(bigshm=False, ccdbbackend=True, runcommand=True):
615615
# No vertexing for event pool generation; otherwise the vertex comes from CCDB and later from CollContext
616616
# (Note that the CCDB case covers the kDiamond case, since this is picked up in GRP_TASK)
617617
vtxmode_precoll = 'kNoVertex' if args.make_evtpool else 'kCCDB'
618-
vtxmode_sgngen = 'kCollContext'
618+
vtxmode_sgngen = 'kNoVertex' if args.make_evtpool else 'kCollContext'
619619

620620
# preproduce the collision context / timeframe structure for all timeframes at once
621621
precollneeds=[GRP_TASK['name']]
@@ -1809,6 +1809,7 @@ def getDigiTaskName(det):
18091809
f"--lpmp-prod-tag {args.productionTag}",
18101810
"--anchor-pass ${ALIEN_JDL_LPMANCHORPASSNAME:-unknown}",
18111811
"--anchor-prod ${ALIEN_JDL_LPMANCHORPRODUCTION:-unknown}",
1812+
"--reco-pass ${ALIEN_JDL_LPMPASSNAME:-unknown}",
18121813
created_by_option,
18131814
"--combine-source-devices" if not args.no_combine_dpl_devices else "",
18141815
"--disable-mc" if args.no_mc_labels else "",

MC/bin/o2dpg_sim_workflow_anchored.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -650,8 +650,10 @@ def main():
650650
# needs to be handled as further below:
651651
energyarg = (" -eCM " + str(eCM)) if A1 == A2 else (" -eA " + str(eA) + " -eB " + str(eB))
652652
forwardargs += " -tf " + str(args.tf) + " --sor " + str(effective_run_start) + " --timestamp " + str(timestamp) + " --production-offset " + str(prod_offset) + " -run " + str(args.run_number) + " --run-anchored --first-orbit " \
653-
+ str(GLOparams["FirstOrbit"]) + " --orbitsPerTF " + str(GLOparams["OrbitsPerTF"]) + " -col " + str(ColSystem) + str(energyarg)
654-
# the following options can be overwritten/influence from the outside
653+
+ str(GLOparams["FirstOrbit"]) + " --orbitsPerTF " + str(GLOparams["OrbitsPerTF"]) + str(energyarg)
654+
# the following options can be overwritten/influenced from the outside
655+
if not '-col' in forwardargs:
656+
forwardargs += ' -col ' + ColSystem
655657
if not '--readoutDets' in forwardargs:
656658
forwardargs += ' --readoutDets ' + GLOparams['detList']
657659
if not '-field' in forwardargs:
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
### The external generator derives from GeneratorPythia8.
2+
[GeneratorExternal]
3+
fileName=${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGDQ/external/generator/generator_pythia8_HadronTriggered_withGap.C
4+
funcName=GeneratorInclusiveJpsiPsi2S_EvtGenMidY(5,-1.5,1.5)
5+
6+
[GeneratorPythia8]
7+
config=${O2DPG_MC_CONFIG_ROOT}/MC/config/common/pythia8/generator/pythia8_pO_961.cfg
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
int External()
2+
{
3+
int checkPdgSignal[] = {443,100443};
4+
int checkPdgDecay = 11;
5+
std::string path{"o2sim_Kine.root"};
6+
std::cout << "Check for\nsignal PDG " << checkPdgSignal << "\ndecay PDG " << checkPdgDecay << "\n";
7+
TFile file(path.c_str(), "READ");
8+
if (file.IsZombie()) {
9+
std::cerr << "Cannot open ROOT file " << path << "\n";
10+
return 1;
11+
}
12+
13+
auto tree = (TTree*)file.Get("o2sim");
14+
std::vector<o2::MCTrack>* tracks{};
15+
tree->SetBranchAddress("MCTrack", &tracks);
16+
17+
int nLeptons{};
18+
int nAntileptons{};
19+
int nLeptonPairs{};
20+
int nLeptonPairsToBeDone{};
21+
int nSignalJpsi{};
22+
int nSignalPsi2S{};
23+
int nSignalJpsiWithinAcc{};
24+
int nSignalPsi2SWithinAcc{};
25+
auto nEvents = tree->GetEntries();
26+
o2::steer::MCKinematicsReader mcreader("o2sim", o2::steer::MCKinematicsReader::Mode::kMCKine);
27+
Bool_t isInjected = kFALSE;
28+
29+
for (int i = 0; i < nEvents; i++) {
30+
tree->GetEntry(i);
31+
for (auto& track : *tracks) {
32+
auto pdg = track.GetPdgCode();
33+
auto rapidity = track.GetRapidity();
34+
auto idMoth = track.getMotherTrackId();
35+
if (pdg == checkPdgDecay) {
36+
// count leptons
37+
nLeptons++;
38+
} else if(pdg == -checkPdgDecay) {
39+
// count anti-leptons
40+
nAntileptons++;
41+
} else if (pdg == checkPdgSignal[0] || pdg == checkPdgSignal[1]) {
42+
if(idMoth < 0){
43+
// count signal PDG
44+
pdg == checkPdgSignal[0] ? nSignalJpsi++ : nSignalPsi2S++;
45+
// count signal PDG within acceptance
46+
if(std::abs(rapidity) < 1.0) { pdg == checkPdgSignal[0] ? nSignalJpsiWithinAcc++ : nSignalPsi2SWithinAcc++;}
47+
}
48+
auto child0 = o2::mcutils::MCTrackNavigator::getDaughter0(track, *tracks);
49+
auto child1 = o2::mcutils::MCTrackNavigator::getDaughter1(track, *tracks);
50+
if (child0 != nullptr && child1 != nullptr) {
51+
// check for parent-child relations
52+
auto pdg0 = child0->GetPdgCode();
53+
auto pdg1 = child1->GetPdgCode();
54+
std::cout << "First and last children of parent " << checkPdgSignal << " are PDG0: " << pdg0 << " PDG1: " << pdg1 << "\n";
55+
if (std::abs(pdg0) == checkPdgDecay && std::abs(pdg1) == checkPdgDecay && pdg0 == -pdg1) {
56+
nLeptonPairs++;
57+
if (child0->getToBeDone() && child1->getToBeDone()) {
58+
nLeptonPairsToBeDone++;
59+
}
60+
}
61+
}
62+
}
63+
}
64+
}
65+
std::cout << "#events: " << nEvents << "\n"
66+
<< "#leptons: " << nLeptons << "\n"
67+
<< "#antileptons: " << nAntileptons << "\n"
68+
<< "#signal (prompt Jpsi): " << nSignalJpsi << "; within acceptance (|y| < 1): " << nSignalJpsiWithinAcc << "\n"
69+
<< "#signal (prompt Psi(2S)): " << nSignalPsi2S << "; within acceptance (|y| < 1): " << nSignalPsi2SWithinAcc << "\n"
70+
<< "#lepton pairs: " << nLeptonPairs << "\n"
71+
<< "#lepton pairs to be done: " << nLeptonPairs << "\n";
72+
73+
74+
if (nLeptonPairs == 0 || nLeptons == 0 || nAntileptons == 0) {
75+
std::cerr << "Number of leptons, number of anti-leptons as well as number of lepton pairs should all be greater than 1.\n";
76+
return 1;
77+
}
78+
if (nLeptonPairs != nLeptonPairsToBeDone) {
79+
std::cerr << "The number of lepton pairs should be the same as the number of lepton pairs which should be transported.\n";
80+
return 1;
81+
}
82+
83+
return 0;
84+
}

MC/config/PWGEM/external/generator/Generator_pythia8_GapTriggered_HFLepton_OO.C

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,6 @@ public:
4646
pythiaObjectSignal.readFile(pathconfigSignal.Data());
4747
pythiaObjectSignal.readString("Random:setSeed on");
4848
pythiaObjectSignal.readString("Random:seed " + std::to_string(seed));
49-
pythiaObjectSignal.readString("Beams:idA = 1000080160");
50-
pythiaObjectSignal.readString("Beams:idB = 1000080160");
51-
pythiaObjectSignal.readString("Beams:eCM = 5360.0");
52-
pythiaObjectSignal.readString("Beams:frameType = 1");
53-
pythiaObjectSignal.readString("ParticleDecays:limitTau0 = on");
54-
pythiaObjectSignal.readString("ParticleDecays:tau0Max = 10.");
55-
pythiaObjectSignal.readString("HeavyIon:SigFitNGen = 0");
56-
pythiaObjectSignal.readString("HeavyIon:SigFitDefPar = 2.15,18.42,0.33");
5749
pythiaObjectSignal.init();
5850
cout << "Initalization of signal event is complete" << endl;
5951

@@ -197,7 +189,7 @@ private:
197189
// Charm-enriched forced decay
198190
FairGenerator* GeneratorPythia8GapTriggeredCharmLepton(int inputTriggerRatio, int inputExternalID, int pdgLepton, float yMinQ = -1.5, float yMaxQ = 1.5, float yMinL = -1, float yMaxL = 1)
199191
{
200-
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_pp_cr2_forceddecayscharm.cfg", 4, inputTriggerRatio, inputExternalID);
192+
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_OO_536_ccbar.cfg", 4, inputTriggerRatio, inputExternalID);
201193
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
202194
myGen->readString("Random:setSeed on");
203195
myGen->readString("Random:seed " + std::to_string(seed));
@@ -207,10 +199,11 @@ FairGenerator* GeneratorPythia8GapTriggeredCharmLepton(int inputTriggerRatio, in
207199
return myGen;
208200
}
209201

202+
210203
// Beauty-enriched forced decay
211204
FairGenerator* GeneratorPythia8GapTriggeredBeautyForcedDecays(int inputTriggerRatio, int inputExternalID, int pdgLepton, float yMinQ = -1.5, float yMaxQ = 1.5, float yMinL = -1, float yMaxL = 1)
212205
{
213-
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_bbbar_forceddecayscharmbeauty.cfg", 5, inputTriggerRatio, inputExternalID);
206+
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_bbbar_OO_536_forceddecayscharmbeauty.cfg", 5, inputTriggerRatio, inputExternalID);
214207
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
215208
myGen->readString("Random:setSeed on");
216209
myGen->readString("Random:seed " + std::to_string(seed));
@@ -223,7 +216,7 @@ FairGenerator* GeneratorPythia8GapTriggeredBeautyForcedDecays(int inputTriggerRa
223216
// Beauty-enriched no forced decay
224217
FairGenerator* GeneratorPythia8GapTriggeredBeautyNoForcedDecays(int inputTriggerRatio, int inputExternalID, int pdgLepton, float yMinQ = -1.5, float yMaxQ = 1.5, float yMinL = -1, float yMaxL = 1)
225218
{
226-
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_bbbar.cfg", 5, inputTriggerRatio, inputExternalID);
219+
auto myGen = new GeneratorPythia8GapTriggeredHFLeptonOO("${O2DPG_MC_CONFIG_ROOT}/MC/config/PWGEM/pythia8/generator/pythia8_OO_536_bbbar.cfg", 5, inputTriggerRatio, inputExternalID);
227220
auto seed = (gRandom->TRandom::GetSeed() % 900000000);
228221
myGen->readString("Random:setSeed on");
229222
myGen->readString("Random:seed " + std::to_string(seed));

0 commit comments

Comments
 (0)