Skip to content

Commit cae116e

Browse files
authored
Merge f40edf7 into sapling-pr-archive-ehellbar
2 parents 4464f90 + f40edf7 commit cae116e

44 files changed

Lines changed: 1760 additions & 128 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/common/setenv_calib.sh

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ if has_detector_calib TOF && has_detector_reco TOF && ( ( has_detectors_reco ITS
2020
if has_detector_calib TPC && has_detectors ITS TPC && has_detector_matching ITSTPC; then CAN_DO_CALIB_TPC_SCDCALIB=1; else CAN_DO_CALIB_TPC_SCDCALIB=0; fi
2121
if has_detector_calib TPC && has_processing_step TPC_DEDX; then CAN_DO_CALIB_TPC_TIMEGAIN=1; CAN_DO_CALIB_TPC_RESPADGAIN=1; else CAN_DO_CALIB_TPC_TIMEGAIN=0; CAN_DO_CALIB_TPC_RESPADGAIN=0; fi
2222
if has_detector_calib TPC && has_detectors ITS TPC && has_detector_matching ITSTPC; then CAN_DO_CALIB_TPC_VDRIFTTGL=1; else CAN_DO_CALIB_TPC_VDRIFTTGL=0; fi
23-
if has_detector_calib TPC; then CAN_DO_CALIB_TPC_IDC=1; CAN_DO_CALIB_TPC_SAC=1; else CAN_DO_CALIB_TPC_IDC=0; CAN_DO_CALIB_TPC_SAC=0; fi
23+
if has_detector_calib TPC; then CAN_DO_CALIB_TPC_IDC=1; CAN_DO_CALIB_TPC_SAC=1; CAN_DO_CALIB_TPC_CMV=1; else CAN_DO_CALIB_TPC_IDC=0; CAN_DO_CALIB_TPC_SAC=0; CAN_DO_CALIB_TPC_CMV=0; fi
2424
if [[ ! -z ${FLP_IDS:-} && ! $FLP_IDS =~ (^|,)"145"(,|$) ]] || [[ "${GEN_TOPO_DEPLOYMENT_TYPE:-}" == "ALICE_STAGING" ]]; then CAN_DO_CALIB_TPC_SAC=0; fi
2525
if has_detector_calib TRD && has_detectors ITS TPC TRD && has_detector_matching ITSTPCTRD; then CAN_DO_CALIB_TRD_VDRIFTEXB=1; CAN_DO_CALIB_TRD_GAIN=1; CAN_DO_CALIB_TRD_T0=1; else CAN_DO_CALIB_TRD_VDRIFTEXB=0; CAN_DO_CALIB_TRD_GAIN=0; CAN_DO_CALIB_TRD_T0=0; fi
2626
if has_detector_calib EMC && has_detector_reco EMC; then CAN_DO_CALIB_EMC_BADCHANNELCALIB=1; CAN_DO_CALIB_EMC_TIMECALIB=1; else CAN_DO_CALIB_EMC_BADCHANNELCALIB=0; CAN_DO_CALIB_EMC_TIMECALIB=0; fi
@@ -178,6 +178,12 @@ if [[ $CAN_DO_CALIB_TPC_SAC == 1 ]]; then
178178
fi
179179
fi
180180
fi
181+
# CMV (be default, it is always disabled for now)
182+
if [[ $CAN_DO_CALIB_TPC_CMV == 1 ]]; then
183+
if [[ -z ${CALIB_TPC_CMV+x} ]]; then
184+
CALIB_TPC_CMV=0;
185+
fi
186+
fi
181187

182188
( [[ -z ${CALIB_FT0_INTEGRATEDCURR:-} ]] || [[ $CAN_DO_CALIB_FT0_INTEGRATEDCURR == 0 ]] ) && CALIB_FT0_INTEGRATEDCURR=0
183189
( [[ -z ${CALIB_FV0_INTEGRATEDCURR:-} ]] || [[ $CAN_DO_CALIB_FV0_INTEGRATEDCURR == 0 ]] ) && CALIB_FV0_INTEGRATEDCURR=0
@@ -307,6 +313,13 @@ if [[ -z ${CALIBDATASPEC_TPCIDC_C:-} ]]; then
307313
# TPC
308314
if [[ $CALIB_TPC_IDC == 1 ]]; then add_semicolon_separated CALIBDATASPEC_TPCIDC_C "idcsgroupc:TPC/IDCGROUPC"; fi
309315
fi
316+
if [[ -z ${CALIBDATASPEC_TPCCMV:-} ]]; then
317+
# TPC
318+
if [[ $CALIB_TPC_CMV == 1 ]]; then
319+
add_semicolon_separated CALIBDATASPEC_TPCCMV "cmvgroup:TPC/CMVGROUP";
320+
add_semicolon_separated CALIBDATASPEC_TPCCMV "cmvorbit:TPC/CMVORBITINFO";
321+
fi
322+
fi
310323

311324
# define spec for proxy for TPC SAC
312325
if [[ -z ${CALIBDATASPEC_TPCSAC:-} ]]; then

DATA/production/calib/tpc-laser-aggregator.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ FILEWORKDIR="/home/wiechula/processData/inputFilesTracking/triggeredLaser"
88

99
PROXY_INSPEC="A:TPC/LASERTRACKS;B:TPC/CEDIGITS;D:TPC/CLUSREFS"
1010

11-
CALIB_CONFIG="TPCCalibPulser.FirstTimeBin=450;TPCCalibPulser.LastTimeBin=550;TPCCalibPulser.NbinsQtot=300;TPCCalibPulser.XminQtot=2;TPCCalibPulser.XmaxQtot=602;TPCCalibPulser.MinimumQtot=8;TPCCalibPulser.MinimumQmax=6;TPCCalibPulser.XminT0=450;TPCCalibPulser.XmaxT0=550;TPCCalibPulser.NbinsT0=400;keyval.output_dir=/dev/null"
11+
CALIB_CONFIG="TPCCalibPulser.FirstTimeBin=450;TPCCalibPulser.LastTimeBin=550;TPCCalibPulser.NbinsQtot=600;TPCCalibPulser.XminQtot=2;TPCCalibPulser.XmaxQtot=1202;TPCCalibPulser.MinimumQtot=8;TPCCalibPulser.MinimumQmax=6;TPCCalibPulser.XminT0=450;TPCCalibPulser.XmaxT0=550;TPCCalibPulser.NbinsT0=400;keyval.output_dir=/dev/null"
1212

1313
[[ $RUNTYPE == "SYNTHETIC" ]] && CCDB_PATH="http://ccdb-test.cern.ch:8080" || CCDB_PATH="http://o2-ccdb.internal"
1414

DATA/production/calib/tpc-laser.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ fi
4848
PROXY_INSPEC="A:TPC/RAWDATA;dd:FLP/DISTSUBTIMEFRAME/0"
4949
CALIB_INSPEC="A:TPC/RAWDATA;dd:FLP/DISTSUBTIMEFRAME/0"
5050

51-
CALIB_CONFIG="TPCCalibPulser.FirstTimeBin=450;TPCCalibPulser.LastTimeBin=550;TPCCalibPulser.NbinsQtot=250;TPCCalibPulser.XminQtot=2;TPCCalibPulser.XmaxQtot=502;TPCCalibPulser.MinimumQtot=8;TPCCalibPulser.MinimumQmax=6;TPCCalibPulser.XminT0=450;TPCCalibPulser.XmaxT0=550;TPCCalibPulser.NbinsT0=400;keyval.output_dir=/dev/null"
51+
CALIB_CONFIG="TPCCalibPulser.FirstTimeBin=450;TPCCalibPulser.LastTimeBin=550;TPCCalibPulser.NbinsQtot=400;TPCCalibPulser.XminQtot=2;TPCCalibPulser.XmaxQtot=802;TPCCalibPulser.MinimumQtot=8;TPCCalibPulser.MinimumQmax=6;TPCCalibPulser.XminT0=450;TPCCalibPulser.XmaxT0=550;TPCCalibPulser.NbinsT0=400;keyval.output_dir=/dev/null"
5252

5353
CCDB_PATH="http://o2-ccdb.internal"
5454

DATA/production/configurations/CTFSkimming/ctf-skim-workflow.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ done
8989

9090
if [[ -z ${IRFRAMES:-} ]] || [[ -z ${CTFLIST:-} ]] ; then
9191
echo "Format: ${0##*/} -f <IRFramesFile> -c <CTFsList>"
92-
exit 1
92+
exit 1
9393
fi
9494

9595
[[ "0${ALLOW_MISSING_DET:-}" == "00" ]] && ALLOW_MISSING_DET= || ALLOW_MISSING_DET="--allow-missing-detectors"
@@ -107,12 +107,12 @@ add_W o2-ctf-reader-workflow "--ctf-data-subspec 1 --ir-frames-files $IRFRAMES $
107107

108108
if [[ -z ${NO_ITSMFT_MASKING:-} ]] ; then
109109
has_detector_ctf ITS && add_W o2-its-reco-workflow "--digits-from-upstream --disable-mc --disable-tracking --disable-root-output --pipeline $(get_N its-tracker ITS REST 1 ITSTRK)" "ITSClustererParam.maxBCDiffToMaskBias=10;"
110-
has_detector_ctf MFT && add_W o2-mft-reco-workflow "--digits-from-upstream --disable-mc --disable-tracking --disable-root-output --pipeline $(get_N mft-tracker MFT REST 1 MFTTRK)" "MFTClustererParam.maxBCDiffToMaskBias=10;"
110+
has_detector_ctf MFT && add_W o2-mft-reco-workflow "--digits-from-upstream --disable-mc --disable-tracking --disable-root-output --pipeline $(get_N mft-tracker MFT REST 1 MFTTRK)" "MFTClustererParam.maxBCDiffToMaskBias=10;"
111111
fi
112112

113113
has_detector_ctf ITS && add_W o2-itsmft-entropy-encoder-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${ITS_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${ITS_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${ITS_ENC_MEMFACT:-1.5} --pipeline $(get_N its-entropy-encoder ITS CTF 1)"
114114
has_detector_ctf MFT && add_W o2-itsmft-entropy-encoder-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${MFT_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${MFT_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${MFT_ENC_MEMFACT:-1.5} --runmft true --pipeline $(get_N mft-entropy-encoder MFT CTF 1)"
115-
has_detector_ctf TPC && add_W o2-tpc-reco-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${TPC_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${TPC_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${TPC_ENC_MEMFACT:-1.} --input-type compressed-clusters-flat --output-type encoded-clusters,disable-writer --pipeline $(get_N tpc-entropy-encoder TPC CTF 1 TPCENT)"
115+
has_detector_ctf TPC && add_W o2-tpc-reco-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${TPC_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${TPC_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${TPC_ENC_MEMFACT:-1.} --input-type compressed-clusters-flat-for-encode --output-type encoded-clusters,disable-writer --pipeline $(get_N tpc-entropy-encoder TPC CTF 1 TPCENT)"
116116
has_detector_ctf TRD && add_W o2-trd-entropy-encoder-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${TRD_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${TRD_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${TRD_ENC_MEMFACT:-1.5} --pipeline $(get_N trd-entropy-encoder TRD CTF 1 TRDENT)"
117117
has_detector_ctf TOF && add_W o2-tof-entropy-encoder-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${TOF_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${TOF_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${TOF_ENC_MEMFACT:-1.5} --pipeline $(get_N tof-entropy-encoder TOF CTF 1)"
118118
has_detector_ctf FT0 && add_W o2-ft0-entropy-encoder-workflow "$RANS_OPT --select-ir-frames --irframe-margin-bwd ${FT0_MARGIN_BWD:-$DEF_MARGIN_BWD} --irframe-margin-fwd ${FT0_MARGIN_FWD:-$DEF_MARGIN_FWD} --mem-factor ${FT0_ENC_MEMFACT:-1.5} --pipeline $(get_N ft0-entropy-encoder FT0 CTF 1)"

DATA/production/configurations/asyncReco/setenv_extra.sh

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -349,12 +349,7 @@ if [[ $ALIGNLEVEL == 0 ]]; then
349349
elif [[ $ALIGNLEVEL == 1 ]]; then
350350
ERRIB="100e-8"
351351
ERROB="100e-8"
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
352+
[[ -z $TPCITSTIMEERR ]] && TPCITSTIMEERR="0.2"
358353
if [[ $ALIEN_JDL_LPMANCHORYEAR == "2023" && $BEAMTYPE == "PbPb" && $ANCHORED_PASS_NUMBER -lt 5 ]] || [[ $PERIOD == "LHC24al" ]] ; then
359354
[[ $ALIEN_JDL_LPMANCHORYEAR == "2023" ]] && [[ $BEAMTYPE == "PbPb" ]] && CUT_MATCH_CHI2=80 || CUT_MATCH_CHI2=100
360355
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;"
@@ -558,18 +553,21 @@ export ITSEXTRAERR="ITSCATrackerParam.sysErrY2[0]=$ERRIB;ITSCATrackerParam.sysEr
558553
# ad-hoc options for ITS reco workflow
559554
EXTRA_ITSRECO_CONFIG=
560555
if [[ $BEAMTYPE == "PbPb" ]]; then
561-
EXTRA_ITSRECO_CONFIG="ITSCATrackerParam.deltaRof=0;ITSVertexerParam.clusterContributorsCut=16;ITSVertexerParam.lowMultBeamDistCut=0;ITSCATrackerParam.nROFsPerIterations=12;ITSCATrackerParam.perPrimaryVertexProcessing=false;ITSCATrackerParam.fataliseUponFailure=false;ITSCATrackerParam.dropTFUponFailure=true;ITSCATrackerParam.maxMemory=21474836480;"
556+
# tracker memory
557+
EXTRA_ITSRECO_CONFIG=";ITSCATrackerParam.perPrimaryVertexProcessing=false;ITSCATrackerParam.fataliseUponFailure=false;ITSCATrackerParam.dropTFUponFailure=true;ITSCATrackerParam.maxMemory=21474836480;"
562558
if [[ -z "$ALIEN_JDL_DISABLE_UPC" || $ALIEN_JDL_DISABLE_UPC != 1 ]]; then
563559
EXTRA_ITSRECO_CONFIG+=";ITSVertexerParam.nIterations=2;ITSCATrackerParam.doUPCIteration=true;"
564560
fi
565561
if [[ $LOWFIELD == "1" ]]; then
566-
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.minPt=2.5;"
562+
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.minPt=2.5;" # disables B-field scaling
567563
fi
568564
elif [[ $BEAMTYPE == "pp" || $LIGHTNUCLEI == "1" ]]; then
569-
EXTRA_ITSRECO_CONFIG="ITSVertexerParam.phiCut=0.5;ITSVertexerParam.clusterContributorsCut=3;ITSVertexerParam.tanLambdaCut=0.2;"
570-
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.startLayerMask[0]=127;ITSCATrackerParam.startLayerMask[1]=127;ITSCATrackerParam.startLayerMask[2]=127;"
565+
# allowed start layers
566+
EXTRA_ITSRECO_CONFIG=";ITSCATrackerParam.startLayerMask[0]=127;ITSCATrackerParam.startLayerMask[1]=127;ITSCATrackerParam.startLayerMask[2]=127;"
567+
# low pt-cutoffs
571568
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.minPtIterLgt[0]=0.05;ITSCATrackerParam.minPtIterLgt[1]=0.05;ITSCATrackerParam.minPtIterLgt[2]=0.05;ITSCATrackerParam.minPtIterLgt[3]=0.05;ITSCATrackerParam.minPtIterLgt[4]=0.05;ITSCATrackerParam.minPtIterLgt[5]=0.05;ITSCATrackerParam.minPtIterLgt[6]=0.05;ITSCATrackerParam.minPtIterLgt[7]=0.05;ITSCATrackerParam.minPtIterLgt[8]=0.05;ITSCATrackerParam.minPtIterLgt[9]=0.09;ITSCATrackerParam.minPtIterLgt[10]=0.167;ITSCATrackerParam.minPtIterLgt[11]=0.125;"
572-
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.deltaRof=1;ITSVertexerParam.deltaRof=1;" # enable delta-rof tracking
569+
# enable delta-rof tracking
570+
EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.addTimeError[0]=30;ITSCATrackerParam.addTimeError[1]=30;ITSCATrackerParam.addTimeError[2]=30;ITSCATrackerParam.addTimeError[3]=30;ITSCATrackerParam.addTimeError[4]=30;ITSCATrackerParam.addTimeError[5]=30;ITSCATrackerParam.addTimeError[6]=30;ITSVertexerParam.seedMemberRadiusTime=1;"
573571
# this is to impose old pp pT cuts (overriding hardcoded pbpb24 apass1 settings)
574572
# EXTRA_ITSRECO_CONFIG+=";ITSCATrackerParam.minPtIterLgt[0]=0.05;ITSCATrackerParam.minPtIterLgt[1]=0.05;ITSCATrackerParam.minPtIterLgt[2]=0.05;ITSCATrackerParam.minPtIterLgt[3]=0.05;ITSCATrackerParam.minPtIterLgt[4]=0.05;ITSCATrackerParam.minPtIterLgt[5]=0.05;ITSCATrackerParam.minPtIterLgt[6]=0.05;ITSCATrackerParam.minPtIterLgt[7]=0.05;ITSCATrackerParam.minPtIterLgt[8]=0.05;ITSCATrackerParam.minPtIterLgt[9]=0.05;ITSCATrackerParam.minPtIterLgt[10]=0.05;ITSCATrackerParam.minPtIterLgt[11]=0.05;"
575573
fi

MC/bin/o2dpg_sim_config.py

Lines changed: 37 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,19 @@ def add(cfg, flatconfig):
2828
if 302000 <= int(args.run) and int(args.run) < 309999:
2929
add(config, {"ITSAlpideParam.roFrameLengthInBC" : 198})
3030
# ITS reco settings
31-
add(config, {"ITSVertexerParam.phiCut" : 0.5,
32-
"ITSVertexerParam.clusterContributorsCut" : 3,
33-
"ITSVertexerParam.tanLambdaCut" : 0.2})
31+
add(config, {"ITSVertexerParam.phiCut": 0.4,
32+
"ITSVertexerParam.tanLambdaCut": 0.17,
33+
"ITSVertexerParam.pairCut": 0.0317563,
34+
"ITSVertexerParam.clusterCut": 0.6640964,
35+
"ITSVertexerParam.coarseZWindow": 0.2049018,
36+
"ITSVertexerParam.seedDedupZCut": 0.0711793,
37+
"ITSVertexerParam.refitDedupZCut": 0.0680009,
38+
"ITSVertexerParam.duplicateZCut": 0.1582193,
39+
"ITSVertexerParam.finalSelectionZCut": 0.1081465,
40+
"ITSVertexerParam.duplicateDistance2Cut": 0.0117033,
41+
"ITSVertexerParam.clusterContributorsCut": 2,
42+
"ITSVertexerParam.seedMemberRadiusZ": 0,
43+
"ITSVertexerParam.nSigmaCut": 0.032841})
3444
# primary vertexing settings
3545
if 301000 <= int(args.run) and int(args.run) <= 301999:
3646
add(config, {"pvertexer.acceptableScale2" : 9,
@@ -86,10 +96,6 @@ def add(cfg, flatconfig):
8696
if args.fwdmatching_cut_4_param == True:
8797
add(config, {"FwdMatching.cutFcn" : "cut3SigmaXYAngles"})
8898

89-
# deal with larger combinatorics
90-
if args.col == "PbPb" or (args.embedding and args.colBkg == "PbPb"):
91-
add(config, {"ITSVertexerParam.lowMultBeamDistCut": "0."})
92-
9399
# FIT digitizer settings
94100
# 2023 PbPb
95101
if 543437 <= int(args.run) and int(args.run) <= 545367:
@@ -105,6 +111,29 @@ def add(cfg, flatconfig):
105111
if COLTYPEIR == "PbPb":
106112
# 4 ADC channels / MIP
107113
add(config, {"FV0DigParam.adcChannelsPerMip": "4"})
114+
# 2025
115+
# first and last run of 2025
116+
if 562260 <= int(args.run) and int(args.run) <= 568721:
117+
# 14 ADC channels / MIP for FT0
118+
add(config, {"FT0DigParam.mMip_in_V": "7", "FT0DigParam.mMV_2_Nchannels": "2", "FT0DigParam.mMV_2_NchannelsInverse": "0.5"})
119+
if COLTYPEIR == "PbPb":
120+
# 4 ADC channels / MIP
121+
add(config, {"FV0DigParam.adcChannelsPerMip": "4"})
122+
# central and semicentral FT0 thresholds
123+
add(config, {"FT0DigParam.mtrg_central_trh": "1433", "FT0DigParam.mtrg_semicentral_trh": "35"})
124+
# FV0 trigger settings
125+
add(config, {"FV0DigParam.NchannelsLevel": "2", "FV0DigParam.InnerChargeLevel": "4", "FV0DigParam.OuterChargeLevel": "4", "FV0DigParam.ChargeLevel": "1080"})
126+
if COLTYPEIR == "pp" or COLTYPEIR == "OO" or COLTYPEIR == "NeNe" or COLTYPEIR == "pO":
127+
# central and semicentral FT0 thresholds
128+
add(config, {"FT0DigParam.mtrg_central_trh": "40", "FT0DigParam.mtrg_semicentral_trh": "20"})
129+
# FV0 trigger settings
130+
add(config, {"FV0DigParam.NchannelsLevel": "2", "FV0DigParam.InnerChargeLevel": "4", "FV0DigParam.OuterChargeLevel": "4", "FV0DigParam.ChargeLevel": "8"})
131+
if COLTYPEIR == "pp":
132+
# 15 ADC channels / MIP
133+
add(config, {"FV0DigParam.adcChannelsPerMip": "15"})
134+
if COLTYPEIR == "OO" or COLTYPEIR == "NeNe" or COLTYPEIR == "pO":
135+
# 11 ADC channels / MIP
136+
add(config, {"FV0DigParam.adcChannelsPerMip": "11"})
108137

109138
return config
110139

@@ -234,4 +263,4 @@ def overwrite_config(config, mainkey, subkey, value):
234263
if mainkey not in config:
235264
# Initialize the main key in the dictionary if it does not already exist
236265
config[mainkey] = {}
237-
config[mainkey][subkey] = value
266+
config[mainkey][subkey] = value

MC/bin/o2dpg_sim_workflow.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,9 @@ def load_external_config(configfile):
302302
activeDetectors = { det:1 for det in activeDetectors.split(',') if det not in args.skipModules and det not in args.skipReadout}
303303
for det in activeDetectors:
304304
activate_detector(det)
305+
for det in args.skipModules:
306+
print(f"Skipping detector {det} in simulation")
307+
deactivate_detector(det)
305308

306309
# function to finalize detector source lists based on activeDetectors
307310
# detector source lists are comma separated lists of DET1, DET2, DET1-DET2, ...
@@ -1227,7 +1230,7 @@ def createRestDigiTask(name, det='ALLSMALLER'):
12271230
getDPL_global_options(),
12281231
f'-n {args.ns}',
12291232
simsoption,
1230-
'--onlyDet FT0,FV0,EMC,CTP',
1233+
'--onlyDet ' + ','.join([det for det in ['FT0', 'FV0', 'EMC', 'CTP'] if isActive(det)]),
12311234
f'--interactionRate {INTRATE}',
12321235
f'--incontext {CONTEXTFILE}',
12331236
f'--store-ctp-lumi {CTPSCALER}',
@@ -1387,7 +1390,6 @@ def getDigiTaskName(det):
13871390
ITSRECOtask['cmd'] = task_finalizer([
13881391
"${O2_ROOT}/bin/o2-its-reco-workflow" if args.detectorList == 'ALICE2' else "${O2_ROOT}/bin/o2-its3-reco-workflow",
13891392
getDPL_global_options(bigshm=havePbPb),
1390-
'--trackerCA' if args.detectorList == 'ALICE2' else '',
13911393
'--tracking-mode async',
13921394
putConfigValues(["ITSVertexerParam",
13931395
"ITSAlpideParam",
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[Diamond]
2+
width[2]=6.0
3+
4+
[GeneratorExternal]
5+
fileName=${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/pythia8/generator_pythia8_ALICE3.C
6+
funcName=generator_pythia8_ALICE3()
7+
8+
[GeneratorPythia8]
9+
config=${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/pythia8/generator/pythia8_pp_rescattering_136tev.cfg
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
int External() {
2+
std::string path{"o2sim_Kine.root"};
3+
4+
TFile file(path.c_str(), "READ");
5+
if (file.IsZombie()) {
6+
std::cerr << "Cannot open ROOT file " << path << "\n";
7+
return 1;
8+
}
9+
10+
auto tree = (TTree *)file.Get("o2sim");
11+
if (!tree) {
12+
std::cerr << "Cannot find tree o2sim in file " << path << "\n";
13+
return 1;
14+
}
15+
std::vector<o2::MCTrack> *tracks{};
16+
tree->SetBranchAddress("MCTrack", &tracks);
17+
18+
auto nEvents = tree->GetEntries();
19+
if (nEvents == 0) {
20+
std::cerr << "No event of interest\n";
21+
return 1;
22+
}
23+
return 0;
24+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
### Specify beams
2+
Beams:idA = 2212
3+
Beams:idB = 2212
4+
Beams:eCM = 13600. ### energy
5+
6+
Beams:frameType = 1
7+
ParticleDecays:limitTau0 = on
8+
ParticleDecays:tau0Max = 10. ### match alice: 1cm/c = 10.0mm/c
9+
10+
### processes
11+
SoftQCD:inelastic = on # all inelastic processes
12+
13+
# default: do nothing, Monash 2013 will do its thing
14+
Tune:pp = 14
15+
16+
### enable hadronic rescattering
17+
HadronLevel:Rescatter = on # default = off
18+
Fragmentation:setVertices = on # default = off
19+
PartonVertex:setVertex = on # default = off
20+
Rescattering:nearestNeighbours = off # default = on (but "require a larger retuning effort")
21+
Rescattering:inelastic = on # default = on
22+
23+
Random:setSeed = on

0 commit comments

Comments
 (0)