Back to home page

EIC code displayed by LXR

 
 

    


Warning, /epic-lfhcal-tbana/examples/yall/fullset-f2-repro/Yallfile is written in an unsupported language. File is not indexed.

0001 campaign lfhcal-tb2026-fullset-f2-repro
0002 backend condor
0003 
0004 # Set to full to record operator accounts when permitted by your site's privacy policy.
0005 %account-provenance off
0006 
0007 # Reproduce Fredi's SPS H2 FullSetF_2 calibration chain from raw data.
0008 # Source recipe:
0009 #   NewStructure/convertDataHGCROC_TBSPSH2_2026.sh
0010 #   NewStructure/runHGCROCCalibration_TBSPSH2_2026.sh
0011 #   NewStructure/helperCalibHGCROC.sh
0012 #   NewStructure/stripCalib_TBSPSH2_2026.sh
0013 #
0014 # FullSetF_2 uses muon runs 472, 475, 476, 479, 480, and 483 merged as
0015 # Muon_FullSetF_2, pedestal run 471, the FullSetA-F bad-channel map, the
0016 # FullSetF ToA offsets, and five reduced/no-event-tree improvement passes
0017 # through Imp5R. Fredi selected Set 2 as the final Set F calibration because
0018 # its six beam positions give higher statistics and better coverage.
0019 #
0020 # Fredi's published reference calibration is:
0021 #   ../../../calibrations/TB2026/calib_SPS-H2_FullSetF_2.txt
0022 #
0023 # The ToA offsets are consumed from the published FullSetF file. This workflow
0024 # does not rederive them from hadron run 452.
0025 #
0026 # fixSetup is intentionally omitted: it repairs already-converted files after
0027 # mapping changes. This workflow converts fresh from raw using the current map.
0028 
0029 @env LFHCAL_DATA
0030 @env LFHCAL_WORK
0031 @env EIC_SHELL
0032 @set BUILD ../../../NewStructure/build
0033 @set TB2026_CONFIG ../../../configs/TB2026
0034 
0035 # Scientific run configuration lives here.
0036 @table runs type run:
0037     pedestal 471
0038     muon     472
0039     muon     475
0040     muon     476
0041     muon     479
0042     muon     480
0043     muon     483
0044 
0045 %cpus 1
0046 %memory 4GB
0047 %disk 8GB
0048 %time 2h
0049 %getenv true
0050 %wrapper ../../../tools/run-in-eic-shell.sh {EIC_SHELL} /usr/bin/env ROOT_MAX_THREADS=1 OMP_NUM_THREADS=1
0051 
0052 # Lightweight directory setup runs during `yall-run create`, not as a Condor job.
0053 %preflight /bin/mkdir -p \
0054         {LFHCAL_WORK}/fullset-f2-repro/converted \
0055         {LFHCAL_WORK}/fullset-f2-repro/pedestal \
0056         {LFHCAL_WORK}/fullset-f2-repro/transfer \
0057         {LFHCAL_WORK}/fullset-f2-repro/mip \
0058         {LFHCAL_WORK}/fullset-f2-repro/selected \
0059         {LFHCAL_WORK}/fullset-f2-repro/refine1 \
0060         {LFHCAL_WORK}/fullset-f2-repro/refine2 \
0061         {LFHCAL_WORK}/fullset-f2-repro/refine3 \
0062         {LFHCAL_WORK}/fullset-f2-repro/refine4 \
0063         {LFHCAL_WORK}/fullset-f2-repro/refine5 \
0064         {LFHCAL_WORK}/fullset-f2-repro/final \
0065         {LFHCAL_WORK}/fullset-f2-repro/plots/pedestal \
0066         {LFHCAL_WORK}/fullset-f2-repro/plots/transfer \
0067         {LFHCAL_WORK}/fullset-f2-repro/plots/mip \
0068         {LFHCAL_WORK}/fullset-f2-repro/plots/refine1 \
0069         {LFHCAL_WORK}/fullset-f2-repro/plots/refine2 \
0070         {LFHCAL_WORK}/fullset-f2-repro/plots/refine3 \
0071         {LFHCAL_WORK}/fullset-f2-repro/plots/refine4 \
0072         {LFHCAL_WORK}/fullset-f2-repro/plots/refine5
0073 
0074 convert-{type}-{run}:
0075     @each type run in runs
0076     @input raw {LFHCAL_DATA}/Run{run}.h2g
0077     @input mapping {TB2026_CONFIG}/mapping_HGCROC_SPSH2TB_sumV2_default.csv
0078     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0079     @output root {LFHCAL_WORK}/fullset-f2-repro/converted/rawHGCROC_{run}.root
0080     %memory 2GB
0081     {BUILD}/Convert -d 0 -f -w -c @input.raw \
0082         -o @output.root -m @input.mapping -r @input.rundb
0083 
0084 # Bind type=muon so the parent and input fan-in follow only the muon rows.
0085 merge-{type}: convert-{type}-{run}
0086     @each type muon
0087     @input parts {LFHCAL_WORK}/fullset-f2-repro/converted/rawHGCROC_{run}.root
0088     @output root {LFHCAL_WORK}/fullset-f2-repro/converted/rawHGCROC_Muon_FullSetF_2.root
0089     hadd -f @output.root @input.parts
0090 
0091 # Bind type here; run is inherited from the compatible conversion row.
0092 {type}-{run}: convert-{type}-{run}
0093     @each type pedestal
0094     @input raw {LFHCAL_WORK}/fullset-f2-repro/converted/rawHGCROC_{run}.root
0095     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0096     @output root {LFHCAL_WORK}/fullset-f2-repro/pedestal/rawHGCROC_wPed_{run}.root
0097     @output calib {LFHCAL_WORK}/fullset-f2-repro/pedestal/rawHGCROC_wPed_{run}_calib.txt
0098     @output hists {LFHCAL_WORK}/fullset-f2-repro/pedestal/rawHGCROC_wPed_{run}_Hists.root
0099     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/pedestal/Run{run}
0100     {BUILD}/DataPrep -a -d 1 -p -i @input.raw -f \
0101         -o @output.root -O @output.plots -r @input.rundb -F pdf
0102 
0103 # The patterned pedestal parent keeps this dependency tied to the run table.
0104 transfer-f2: merge-muon {type}-{run}
0105     @input pedestal {LFHCAL_WORK}/fullset-f2-repro/pedestal/rawHGCROC_wPed_{run}.root
0106     @input raw {LFHCAL_WORK}/fullset-f2-repro/converted/rawHGCROC_Muon_FullSetF_2.root
0107     @input bad {TB2026_CONFIG}/badChannel_HGCROC_SPSTB2026_FullSetA-F.txt
0108     @input toa {TB2026_CONFIG}/ToAOffsets_TBSPS2026_FullSetF.csv
0109     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0110     @output root {LFHCAL_WORK}/fullset-f2-repro/transfer/rawHGCROC_wPed_wBC_Muon_FullSetF_2.root
0111     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/transfer/Muon_FullSetF_2
0112     {BUILD}/DataPrep -d 1 -e -f -P @input.pedestal \
0113         -i @input.raw -o @output.root -O @output.plots \
0114         -r @input.rundb -B @input.bad -G @input.toa
0115 
0116 mip-f2: transfer-f2
0117     @input root {LFHCAL_WORK}/fullset-f2-repro/transfer/rawHGCROC_wPed_wBC_Muon_FullSetF_2.root
0118     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0119     @output root {LFHCAL_WORK}/fullset-f2-repro/mip/rawHGCROC_wPedwMuon_wBC_Muon_FullSetF_2.root
0120     @output calib {LFHCAL_WORK}/fullset-f2-repro/mip/rawHGCROC_wPedwMuon_wBC_Muon_FullSetF_2_calib.txt
0121     @output hists {LFHCAL_WORK}/fullset-f2-repro/mip/rawHGCROC_wPedwMuon_wBC_Muon_FullSetF_2_Hists.root
0122     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/mip/Muon_FullSetF_2
0123     {BUILD}/DataPrep -a -f -d 1 -e -s -i @input.root \
0124         -o @output.root -O @output.plots -r @input.rundb
0125 
0126 select-f2: mip-f2
0127     @input root {LFHCAL_WORK}/fullset-f2-repro/mip/rawHGCROC_wPedwMuon_wBC_Muon_FullSetF_2.root
0128     @output root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0129     {BUILD}/DataPrep -f -d 1 -X -i @input.root -o @output.root
0130 
0131 # Fredi's *_red_woE recipe keeps fitting the same skimmed MIP sample and feeds
0132 # the previous pass's text calibration back with -k. It does not feed the
0133 # previous ROOT output into the next pass.
0134 refine1-f2: select-f2
0135     @input root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0136     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0137     @output root {LFHCAL_WORK}/fullset-f2-repro/refine1/rawHGCROC_wPedwMuon_wBC_ImpR_Muon_FullSetF_2.root
0138     @output calib {LFHCAL_WORK}/fullset-f2-repro/refine1/rawHGCROC_wPedwMuon_wBC_ImpR_Muon_FullSetF_2_calib.txt
0139     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/refine1/Muon_FullSetF_2
0140     {BUILD}/DataPrep -x -a -f -d 1 -S -i @input.root \
0141         -o @output.root -O @output.plots -r @input.rundb
0142 
0143 refine2-f2: refine1-f2
0144     @input root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0145     @input prev {LFHCAL_WORK}/fullset-f2-repro/refine1/rawHGCROC_wPedwMuon_wBC_ImpR_Muon_FullSetF_2_calib.txt
0146     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0147     @output root {LFHCAL_WORK}/fullset-f2-repro/refine2/rawHGCROC_wPedwMuon_wBC_Imp2R_Muon_FullSetF_2.root
0148     @output calib {LFHCAL_WORK}/fullset-f2-repro/refine2/rawHGCROC_wPedwMuon_wBC_Imp2R_Muon_FullSetF_2_calib.txt
0149     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/refine2/Muon_FullSetF_2
0150     {BUILD}/DataPrep -x -a -f -d 1 -S -i @input.root -k @input.prev \
0151         -o @output.root -O @output.plots -r @input.rundb
0152 
0153 refine3-f2: refine2-f2
0154     @input root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0155     @input prev {LFHCAL_WORK}/fullset-f2-repro/refine2/rawHGCROC_wPedwMuon_wBC_Imp2R_Muon_FullSetF_2_calib.txt
0156     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0157     @output root {LFHCAL_WORK}/fullset-f2-repro/refine3/rawHGCROC_wPedwMuon_wBC_Imp3R_Muon_FullSetF_2.root
0158     @output calib {LFHCAL_WORK}/fullset-f2-repro/refine3/rawHGCROC_wPedwMuon_wBC_Imp3R_Muon_FullSetF_2_calib.txt
0159     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/refine3/Muon_FullSetF_2
0160     {BUILD}/DataPrep -x -a -f -d 1 -S -i @input.root -k @input.prev \
0161         -o @output.root -O @output.plots -r @input.rundb
0162 
0163 refine4-f2: refine3-f2
0164     @input root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0165     @input prev {LFHCAL_WORK}/fullset-f2-repro/refine3/rawHGCROC_wPedwMuon_wBC_Imp3R_Muon_FullSetF_2_calib.txt
0166     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0167     @output root {LFHCAL_WORK}/fullset-f2-repro/refine4/rawHGCROC_wPedwMuon_wBC_Imp4R_Muon_FullSetF_2.root
0168     @output calib {LFHCAL_WORK}/fullset-f2-repro/refine4/rawHGCROC_wPedwMuon_wBC_Imp4R_Muon_FullSetF_2_calib.txt
0169     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/refine4/Muon_FullSetF_2
0170     {BUILD}/DataPrep -x -a -f -d 1 -S -i @input.root -k @input.prev \
0171         -o @output.root -O @output.plots -r @input.rundb
0172 
0173 refine5-f2: refine4-f2
0174     @input root {LFHCAL_WORK}/fullset-f2-repro/selected/rawHGCROC_mipTrigg_wPedwMuon_wBC_Muon_FullSetF_2.root
0175     @input prev {LFHCAL_WORK}/fullset-f2-repro/refine4/rawHGCROC_wPedwMuon_wBC_Imp4R_Muon_FullSetF_2_calib.txt
0176     @input rundb {TB2026_CONFIG}/DataTakingDB_TBSPSH2_202605_HGCROC.csv
0177     @output root {LFHCAL_WORK}/fullset-f2-repro/refine5/rawHGCROC_wPedwMuon_wBC_Imp5R_Muon_FullSetF_2.root
0178     @output calib {LFHCAL_WORK}/fullset-f2-repro/refine5/rawHGCROC_wPedwMuon_wBC_Imp5R_Muon_FullSetF_2_calib.txt
0179     @output plots {LFHCAL_WORK}/fullset-f2-repro/plots/refine5/Muon_FullSetF_2
0180     {BUILD}/DataPrep -x -a -f -d 1 -S -i @input.root -k @input.prev \
0181         -o @output.root -O @output.plots -r @input.rundb
0182 
0183 final-f2: refine5-f2
0184     @input root {LFHCAL_WORK}/fullset-f2-repro/refine5/rawHGCROC_wPedwMuon_wBC_Imp5R_Muon_FullSetF_2.root
0185     @input calib {LFHCAL_WORK}/fullset-f2-repro/refine5/rawHGCROC_wPedwMuon_wBC_Imp5R_Muon_FullSetF_2_calib.txt
0186     @output root {LFHCAL_WORK}/fullset-f2-repro/final/calib_Final_Muon_FullSetF_2.root
0187     @output calib {LFHCAL_WORK}/fullset-f2-repro/final/calib_Final_Muon_FullSetF_2_calib.txt
0188     ! /bin/mkdir -p {LFHCAL_WORK}/fullset-f2-repro/final && \
0189         /bin/cp @input.root @output.root && /bin/cp @input.calib @output.calib