File indexing completed on 2026-04-04 08:11:55
0001
0002
0003
0004
0005
0006
0007 leading_zero_fill () {
0008 printf "%0$1d\\n" "$2"
0009 }
0010
0011
0012
0013 RUNSLIST="./QM40runs.list"
0014
0015 OUTPUTDIR="./LISTS"
0016 mkdir -p $OUTPUTDIR
0017
0018 DST_CALO="DST_CALO"
0019 DST_CLUS="DST_TRKR_CLUSTER"
0020 DST_SEED="DST_TRKR_SEED"
0021 DST_TRAC="DST_TRKR_TRACKS"
0022 prodCALO="ana502_2024p022_v001"
0023 prodCLUS="ana494_2024p021_v001"
0024 prodSEED="ana494_2024p021_v001"
0025 prodTRAC="ana495_2024p021_v001"
0026 listdirCALO=${OUTPUTDIR}"/DST_CALO_ana502"
0027 listdirCLUS=${OUTPUTDIR}"/DST_TRKR_CLUSTER_ana494"
0028 listdirSEED=${OUTPUTDIR}"/DST_TRKR_SEED_ana494"
0029 listdirTRAC=${OUTPUTDIR}"/DST_TRKR_TRACKS_ana495"
0030
0031
0032
0033 datestr=$(date '+%Y%m%d')
0034 OUTPUTLIST=${OUTPUTDIR}"/catlist_"${datestr}".txt"
0035 echo output file: $OUTPUTLIST
0036 rm -fv $OUTPUTLIST
0037 touch $OUTPUTLIST
0038 dst_CALO=`echo "${DST_CALO,,}"`
0039 dst_CLUS=`echo "${DST_CLUS,,}"`
0040 dst_SEED=`echo "${DST_SEED,,}"`
0041 dst_TRAC=`echo "${DST_TRAC,,}"`
0042
0043 mkdir -p $listdirCALO && rm -f $listdirCALO/*.list
0044 mkdir -p $listdirCLUS && rm -f $listdirCLUS/*.list
0045 mkdir -p $listdirSEED && rm -f $listdirSEED/*.list
0046 mkdir -p $listdirTRAC && rm -f $listdirTRAC/*.list
0047
0048 ./myCreateDstList.pl --tag $prodCALO --list $RUNSLIST $DST_CALO
0049 mv ${dst_CALO}*.list $listdirCALO
0050 echo $prodCALO $RUNSLIST $DST_CALO -- `ls -1 $listdirCALO/*.list | wc -l` runs found
0051
0052 ./myCreateDstList.pl --tag $prodCLUS --list $RUNSLIST $DST_CLUS
0053 mv ${dst_CLUS}*.list $listdirCLUS
0054 echo $prodCLUS $RUNSLIST $DST_CLUS -- `ls -1 $listdirCLUS/*.list | wc -l` runs found
0055
0056 ./myCreateDstList.pl --tag $prodSEED --list $RUNSLIST $DST_SEED
0057 mv ${dst_SEED}*.list $listdirSEED
0058 echo $prodSEED $RUNSLIST $DST_SEED -- `ls -1 $listdirSEED/*.list | wc -l` runs found
0059
0060 ./myCreateDstList.pl --tag $prodTRAC --list $RUNSLIST $DST_TRAC
0061 mv ${dst_TRAC}*.list $listdirTRAC
0062 echo $prodTRAC $RUNSLIST $DST_TRAC -- `ls -1 $listdirTRAC/*.list | wc -l` runs found
0063
0064
0065 echo Starting...
0066 numfoundsegtotal=0
0067 while IFS= read -r runnum; do
0068
0069 numfoundseg=0
0070 paddedrunnum=`leading_zero_fill 8 $runnum`
0071 for segment in $(seq 0 3000); do
0072 paddedsegment=`leading_zero_fill 5 $segment`
0073
0074 found_CALO=false
0075 found_CLUS=false
0076 found_SEED=false
0077 found_TRAC=false
0078
0079 segment2="$((segment / 10))"
0080 paddedsegment2=`leading_zero_fill 5 $segment2`
0081 fileCALO=${DST_CALO}_run2pp_${prodCALO}-${paddedrunnum}-${paddedsegment2}.root
0082 filelist=${listdirCALO}/${dst_CALO}-${paddedrunnum}.list
0083 if grep -Fxq "$fileCALO" "$filelist"; then
0084 found_CALO=true
0085 fi
0086
0087 fileCLUS=${DST_CLUS}_run2pp_${prodCLUS}-${paddedrunnum}-${paddedsegment}.root
0088 filelist=${listdirCLUS}/${dst_CLUS}-${paddedrunnum}.list
0089 if grep -Fxq "$fileCLUS" "$filelist"; then
0090 found_CLUS=true
0091 fi
0092
0093 fileSEED=${DST_SEED}_run2pp_${prodSEED}-${paddedrunnum}-${paddedsegment}.root
0094 filelist=${listdirSEED}/${dst_SEED}-${paddedrunnum}.list
0095 if grep -Fxq "$fileSEED" "$filelist"; then
0096 found_SEED=true
0097 fi
0098
0099 fileTRAC=${DST_TRAC}_run2pp_${prodTRAC}-${paddedrunnum}-${paddedsegment}.root
0100 filelist=${listdirTRAC}/${dst_TRAC}-${paddedrunnum}.list
0101 if grep -Fxq "$fileTRAC" "$filelist"; then
0102 found_TRAC=true
0103 fi
0104
0105 if [[ "$found_CALO" == "true"
0106 && "$found_CLUS" == "true"
0107 && "$found_SEED" == "true"
0108 && "$found_TRAC" == "true" ]]; then
0109
0110 numfoundseg=$((numfoundseg+1))
0111 numfoundsegtotal=$((numfoundsegtotal+1))
0112
0113 echo 0,$fileTRAC,$fileSEED,$fileCLUS,$fileCALO >> $OUTPUTLIST
0114 fi
0115
0116 done
0117 echo found $numfoundseg segments in run $runnum, $numfoundsegtotal total
0118 done < QM40runs.list
0119
0120 exit
0121
0122
0123
0124
0125
0126
0127
0128
0129
0130
0131
0132
0133
0134
0135
0136
0137
0138
0139
0140
0141
0142
0143
0144