Belle II Software development
mdst_compatibility-v01-00-04.py
1#!/usr/bin/env python3
2
3
10
11"""
12Test backwards compatibility for an mdst file produced with release-01-00-04.
13
14See https://xwiki.desy.de/xwiki/rest/p/0a372 if this test fails.
15
16CHANGES since release-01-00-04:
17
18- EventLevelClusteringInfo
19 + nKLMDigitsMultiStrip
20 + nECLShowers
21 + nECLLocalMaximums
22 + nECLTriggerCells
23- EventMetaData:
24 + isEndOfRun
25- EventLevelTrackingInfo:
26 + hasSVDCKFAbortionFlag/setSVDCKFAbortionFlag
27 + hasPXDCKFAbortionFlag/setPXDCKFAbortionFlag
28 + hasSVDSpacePointCreatorAbortionFlag/setSVDSpacePointCreatorAbortionFlag
29- The default magnetic field is changed affecting all momentum measurements.
30- Track:
31 + getQualityIndicator
32 + statusBitmap and getStatusBit
33 + getTrackTime added
34 + wasRefined
35 + isFlippedAndRefitted
36 + getTrackFitResultByName
37 + getTrackFitResultsByName
38 + getTrackFitResultWithClosestMassByName
39- TrackFitResult:
40 + ndf
41 + chi2
42 + remove the const classifier of TrackFitResults and add a function to update the contents
43 + updateTrackFitResult
44 + mask
45- TRGSummary:
46 + getTimQuality added
47 + isPoissonInInjectionVeto()
48 * added getters to map bit names to numbers (getInputBitNumber, getOutputBitNumber)
49 The mapping is from the database and doesn't affect mdst content and is thus not tested here.
50- ECLCluster:
51 + getMinTrkDistanceID
52 + getPulseShapeDiscriminationMVA
53 + getClusterHadronIntensity
54 + getNumberOfHadronDigits
55 + hasPulseShapeDiscrimination
56 + hasTriggerClusterMatching
57 + isTriggerCluster
58 + hasFailedFitTime
59 + hasFailedTimeResolution
60 * getCovarianceMatrixAsArray removed
61- KlIds are added
62- TRGSummary:
63 * getTimTypeBits is replaced by getTimType
64 * getTimQuality added
65- SoftwareTriggerResult:
66 * non-prescaled results added
67- Particle masses:
68 * The particle masses have been updated to PDG 2020. As a result, the
69 energies corresponding to the measured momenta became slightly different.
70- EventLevelTriggerTimeInfo
71 * added new storage element for information from the Trigger Timing Distribution (TTD)
72"""
73
74from basf2 import create_path, process, set_random_seed, find_file
75from b2test_utils import configure_logging_for_tests
76from mdst import add_mdst_dump
77
78if __name__ == "__main__":
79 configure_logging_for_tests()
80 set_random_seed(1)
81 main = create_path()
82 main.add_module("RootInput", inputFileName=find_file("mdst/tests/mdst-v01-00-04.root"))
83 main.add_module("EventInfoPrinter")
84 add_mdst_dump(main, True)
85 process(main, 4)