Skip to content

Commit 9a2ccf7

Browse files
committed
dynamically manipulating always the local json file in GLO QC, for K0s
1 parent d7f2510 commit 9a2ccf7

File tree

1 file changed

+60
-60
lines changed

1 file changed

+60
-60
lines changed

DATA/production/qc-workflow.sh

Lines changed: 60 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -268,72 +268,72 @@ elif [[ -z ${QC_JSON_FROM_OUTSIDE:-} ]]; then
268268
DET_JSON_FILE="QC_JSON_GLO_$i"
269269
if has_matching_qc $i && [ ! -z "${!DET_JSON_FILE:-}" ]; then
270270
if [[ $i == "PRIMVTX" ]] && ! has_detector_reco ITS; then continue; fi
271-
if [[ $i == "ITSTPC" ]] ; then
272-
if ! has_detectors_reco ITS TPC; then continue
273-
else
274-
# replace the input sources depending on the detector compostition and matching detectors
275-
ITSTPCMatchQuery="trackITSTPC:GLO/TPCITS/0;trackITSTPCABREFS:GLO/TPCITSAB_REFS/0;trackITSTPCABCLID:GLO/TPCITSAB_CLID/0;trackTPC:TPC/TRACKS;trackTPCClRefs:TPC/CLUSREFS/0;trackITS:ITS/TRACKS/0;trackITSROF:ITS/ITSTrackROF/0;trackITSClIdx:ITS/TRACKCLSID/0;alpparITS:ITS/ALPIDEPARAM/0?lifetime=condition&ccdb-path=ITS/Config/AlpideParam;SVParam:GLO/SVPARAM/0?lifetime=condition&ccdb-path=GLO/Config/SVertexerParam"
276-
TRACKSOURCESK0="ITS,TPC,ITS-TPC"
277-
if has_processing_step MATCH_SECVTX || has_detector_matching SECVTX ; then
278-
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]] ; then
279-
HAS_K0_ENABLED=$(jq -r .qc.tasks.MTCITSTPC.taskParameters.doK0QC "${!DET_JSON_FILE}")
280-
else
281-
HAS_K0_ENABLED=$(jq -r .qc.tasks.GLOMatchTrITSTPC.taskParameters.doK0QC "${!DET_JSON_FILE}")
271+
if [[ $i == "ITSTPC" ]] && ! has_detectors_reco ITS TPC; then continue; fi
272+
add_QC_JSON GLO_$i ${!DET_JSON_FILE}
273+
274+
if [[ $i == "ITSTPC" ]]; then
275+
LOCAL_FILENAME=${JSON_FILES//*\ /}
276+
# replace the input sources depending on the detector compostition and matching detectors
277+
ITSTPCMatchQuery="trackITSTPC:GLO/TPCITS/0;trackITSTPCABREFS:GLO/TPCITSAB_REFS/0;trackITSTPCABCLID:GLO/TPCITSAB_CLID/0;trackTPC:TPC/TRACKS;trackTPCClRefs:TPC/CLUSREFS/0;trackITS:ITS/TRACKS/0;trackITSROF:ITS/ITSTrackROF/0;trackITSClIdx:ITS/TRACKCLSID/0;alpparITS:ITS/ALPIDEPARAM/0?lifetime=condition&ccdb-path=ITS/Config/AlpideParam;SVParam:GLO/SVPARAM/0?lifetime=condition&ccdb-path=GLO/Config/SVertexerParam"
278+
TRACKSOURCESK0="ITS,TPC,ITS-TPC"
279+
if has_processing_step MATCH_SECVTX || has_detector_matching SECVTX; then
280+
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]]; then
281+
HAS_K0_ENABLED=$(jq -r .qc.tasks.MTCITSTPC.taskParameters.doK0QC "${LOCAL_FILENAME}")
282+
else
283+
HAS_K0_ENABLED=$(jq -r .qc.tasks.GLOMatchTrITSTPC.taskParameters.doK0QC "${LOCAL_FILENAME}")
284+
fi
285+
if [[ $HAS_K0_ENABLED == "true" ]]; then
286+
ITSTPCMatchQuery+=";p2decay3body:GLO/PVTX_3BODYREFS/0;decay3body:GLO/DECAYS3BODY/0;decay3bodyIdx:GLO/DECAYS3BODY_IDX/0;p2cascs:GLO/PVTX_CASCREFS/0;cascs:GLO/CASCS/0;cascsIdx:GLO/CASCS_IDX/0;p2v0s:GLO/PVTX_V0REFS/0;v0s:GLO/V0S/0;v0sIdx:GLO/V0S_IDX/0;pvtx_tref:GLO/PVTX_TRMTCREFS/0;pvtx_trmtc:GLO/PVTX_TRMTC/0;pvtx:GLO/PVTX/0;clusTPCoccmap:TPC/TPCOCCUPANCYMAP/0;clusTPC:TPC/CLUSTERNATIVE;clusTPCshmap:TPC/CLSHAREDMAP/0;trigTPC:TPC/TRIGGERWORDS/0"
287+
if has_secvtx_source ITS-TPC-TRD; then
288+
ITSTPCMatchQuery+=";trigITSTPCTRD:TRD/TRGREC_ITSTPC/0;trackITSTPCTRD:TRD/MATCH_ITSTPC/0"
289+
TRACKSOURCESK0+=",ITS-TPC-TRD"
290+
fi
291+
if has_secvtx_source ITS-TPC-TOF; then
292+
ITSTPCMatchQuery+=";matchITSTPCTOF:TOF/MTC_ITSTPC/0"
293+
TRACKSOURCESK0+=",ITS-TPC-TOF"
294+
fi
295+
if has_secvtx_source ITS-TPC-TRD-TOF; then
296+
ITSTPCMatchQuery+=";matchITSTPCTRDTOF:TOF/MTC_ITSTPCTRD/0"
297+
TRACKSOURCESK0+=",ITS-TPC-TRD-TOF"
282298
fi
283-
if [[ $HAS_K0_ENABLED == "true" ]]; then
284-
ITSTPCMatchQuery+=";p2decay3body:GLO/PVTX_3BODYREFS/0;decay3body:GLO/DECAYS3BODY/0;decay3bodyIdx:GLO/DECAYS3BODY_IDX/0;p2cascs:GLO/PVTX_CASCREFS/0;cascs:GLO/CASCS/0;cascsIdx:GLO/CASCS_IDX/0;p2v0s:GLO/PVTX_V0REFS/0;v0s:GLO/V0S/0;v0sIdx:GLO/V0S_IDX/0;pvtx_tref:GLO/PVTX_TRMTCREFS/0;pvtx_trmtc:GLO/PVTX_TRMTC/0;pvtx:GLO/PVTX/0;clusTPCoccmap:TPC/TPCOCCUPANCYMAP/0;clusTPC:TPC/CLUSTERNATIVE;clusTPCshmap:TPC/CLSHAREDMAP/0;trigTPC:TPC/TRIGGERWORDS/0"
285-
if has_secvtx_source ITS-TPC-TRD ; then
286-
ITSTPCMatchQuery+=";trigITSTPCTRD:TRD/TRGREC_ITSTPC/0;trackITSTPCTRD:TRD/MATCH_ITSTPC/0"
287-
TRACKSOURCESK0+=",ITS-TPC-TRD"
288-
fi
289-
if has_secvtx_source ITS-TPC-TOF ; then
290-
ITSTPCMatchQuery+=";matchITSTPCTOF:TOF/MTC_ITSTPC/0"
291-
TRACKSOURCESK0+=",ITS-TPC-TOF"
292-
fi
293-
if has_secvtx_source ITS-TPC-TRD-TOF ; then
294-
ITSTPCMatchQuery+=";matchITSTPCTRDTOF:TOF/MTC_ITSTPCTRD/0"
295-
TRACKSOURCESK0+=",ITS-TPC-TRD-TOF"
296-
fi
297-
if has_secvtx_source TPC-TRD ; then
298-
ITSTPCMatchQuery+=";trigTPCTRD:TRD/TRGREC_TPC/0;trackTPCTRD:TRD/MATCH_TPC/0"
299-
TRACKSOURCESK0+=",TPC-TRD"
300-
fi
301-
if has_secvtx_source TPC-TOF ; then
302-
ITSTPCMatchQuery+=";matchTPCTOF:TOF/MTC_TPC/0;trackTPCTOF:TOF/TOFTRACKS_TPC/0"
303-
TRACKSOURCESK0+=",TPC-TOF"
304-
fi
305-
if has_secvtx_source TPC-TRD-TOF ; then
306-
ITSTPCMatchQuery+=";matchTPCTRDTOF/TOF/MTC_TPCTRD/0"
307-
TRACKSOURCESK0+=",TPC-TRD-TOF"
308-
fi
309-
if has_secvtx_source TOF ; then
310-
ITSTPCMatchQuery+=";tofcluster:TOF/CLUSTERS/0"
311-
TRACKSOURCESK0+=",TOF"
312-
fi
313-
if has_secvtx_source TRD ; then
314-
TRACKSOURCESK0+=",TRD"
315-
fi
299+
if has_secvtx_source TPC-TRD; then
300+
ITSTPCMatchQuery+=";trigTPCTRD:TRD/TRGREC_TPC/0;trackTPCTRD:TRD/MATCH_TPC/0"
301+
TRACKSOURCESK0+=",TPC-TRD"
316302
fi
317-
TEMP_FILE=$(mktemp "${i}"_XXXXXXX)
318-
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]] ; then
319-
cat "${!DET_JSON_FILE}" | jq "(.dataSamplingPolicies[] | select(.id == \"ITSTPCmSampK0\") | .query) = \"$ITSTPCMatchQuery\" | .qc.tasks.MTCITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\"" > "$TEMP_FILE"
320-
else
321-
cat "${!DET_JSON_FILE}" | jq ".qc.tasks.GLOMatchTrITSTPC.dataSource.query = \"$ITSTPCMatchQuery\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\"" > "$TEMP_FILE"
303+
if has_secvtx_source TPC-TOF; then
304+
ITSTPCMatchQuery+=";matchTPCTOF:TOF/MTC_TPC/0;trackTPCTOF:TOF/TOFTRACKS_TPC/0"
305+
TRACKSOURCESK0+=",TPC-TOF"
322306
fi
323-
else
324-
# we need to force that the K0s part is disabled
325-
TEMP_FILE=$(mktemp "${i}"_XXXXXXX)
326-
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]] ; then
327-
cat "${!DET_JSON_FILE}" | jq "(.dataSamplingPolicies[] | select(.id == \"ITSTPCmSampK0\") | .query) = \"$ITSTPCMatchQuery\" | .qc.tasks.MTCITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\" | .qc.tasks.MTCITSTPC.taskParameters.doK0QC = \"false\"" > "$TEMP_FILE"
328-
else
329-
cat "${!DET_JSON_FILE}" | jq ".qc.tasks.GLOMatchTrITSTPC.dataSource.query = \"$ITSTPCMatchQuery\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.doK0QC = \"false\"" > "$TEMP_FILE"
307+
if has_secvtx_source TPC-TRD-TOF; then
308+
ITSTPCMatchQuery+=";matchTPCTRDTOF/TOF/MTC_TPCTRD/0"
309+
TRACKSOURCESK0+=",TPC-TRD-TOF"
330310
fi
331-
fi
332-
DET_JSON_FILE=TEMP_FILE
333-
JSON_TEMP_FILES+=("$TEMP_FILE")
311+
if has_secvtx_source TOF; then
312+
ITSTPCMatchQuery+=";tofcluster:TOF/CLUSTERS/0"
313+
TRACKSOURCESK0+=",TOF"
314+
fi
315+
if has_secvtx_source TRD; then
316+
TRACKSOURCESK0+=",TRD"
317+
fi
318+
fi
319+
TEMP_FILE=$(mktemp "${GEN_TOPO_WORKDIR:+$GEN_TOPO_WORKDIR/}${i}"_XXXXXXX)
320+
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]]; then
321+
cat "${LOCAL_FILENAME}" | jq "(.dataSamplingPolicies[] | select(.id == \"ITSTPCmSampK0\") | .query) = \"$ITSTPCMatchQuery\" | .qc.tasks.MTCITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\"" >"$TEMP_FILE"
322+
else
323+
cat "${LOCAL_FILENAME}" | jq ".qc.tasks.GLOMatchTrITSTPC.dataSource.query = \"$ITSTPCMatchQuery\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\"" >"$TEMP_FILE"
324+
fi
325+
else
326+
# we need to force that the K0s part is disabled
327+
TEMP_FILE=$(mktemp "${GEN_TOPO_WORKDIR:+$GEN_TOPO_WORKDIR/}${i}"_XXXXXXX)
328+
if [[ $SYNCMODE == 1 ]] || [[ $EPNSYNCMODE == 1 ]]; then
329+
cat "${LOCAL_FILENAME}" | jq "(.dataSamplingPolicies[] | select(.id == \"ITSTPCmSampK0\") | .query) = \"$ITSTPCMatchQuery\" | .qc.tasks.MTCITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\" | .qc.tasks.MTCITSTPC.taskParameters.doK0QC = \"false\"" >"$TEMP_FILE"
330+
else
331+
cat "${LOCAL_FILENAME}" | jq ".qc.tasks.GLOMatchTrITSTPC.dataSource.query = \"$ITSTPCMatchQuery\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.trackSourcesK0 = \"$TRACKSOURCESK0\" | .qc.tasks.GLOMatchTrITSTPC.taskParameters.doK0QC = \"false\"" >"$TEMP_FILE"
332+
fi
334333
fi
334+
JSON_FILES=${JSON_FILES/$LOCAL_FILENAME/$TEMP_FILE}
335+
JSON_TEMP_FILES+=("$TEMP_FILE")
335336
fi
336-
add_QC_JSON GLO_$i ${!DET_JSON_FILE}
337337
fi
338338
done
339339

0 commit comments

Comments
 (0)