athena merge requestshttps://gitlab.cern.ch/atlas/athena/-/merge_requests2018-12-20T15:56:59+01:00https://gitlab.cern.ch/atlas/athena/-/merge_requests/20050First implementation of GenericMetadataTool and GenericMetadataToolNoAux2018-12-20T15:56:59+01:00Jack CranshawFirst implementation of GenericMetadataTool and GenericMetadataToolNoAuxChanges for migration of athena metadata to MT
Interface change: Remove SourceID argument for IMetaDataTool::metaDataStop method
AthenaOutputStream: Remove listening to MetaDataStop incident
GenericMetadataTool: Implemented as base for B...Changes for migration of athena metadata to MT
Interface change: Remove SourceID argument for IMetaDataTool::metaDataStop method
AthenaOutputStream: Remove listening to MetaDataStop incident
GenericMetadataTool: Implemented as base for BookkeeperTool
GenericMetadataToolNoAux: Implemented as base for CopyEventStreamInfo and EventFormatMetaDataToolhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/20388Merge tag 21.0.91-21.0.92 into 21.92021-03-12T17:23:50+01:00John Derek ChapmanMerge tag 21.0.91-21.0.92 into 21.9This merge request merges the changes from the ~"21.0" branch between [release/21.0.90](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.90)
and [release/21.0.91](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) into the ~"...This merge request merges the changes from the ~"21.0" branch between [release/21.0.90](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.90)
and [release/21.0.91](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) into the ~"21.9" branch. This is done via a merge of
[release/21.3.9](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.9).
[release/21.0.91](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.91) is a Tier0 release. It's FT0-violating. It includes the FT0V MRs:
athenaprivate1!16171, athenaprivate1!15893, athenaprivate1!15117, athenaprivate1!16009, athenaprivate1!16049
[release/21.0.92](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) is a Tier0 release. It's FT0-violating. It includes the FT0V MRs:
athenaprivate1!15481, athenaprivate1!16537 The latter of which is the merge of ~"21.1" into ~"21.0"https://gitlab.cern.ch/atlas/athena/-/merge_requests/20757Removal of redundant variables in JGTowerContainer2019-02-14T01:30:47+01:00Chiao-Ying LinRemoval of redundant variables in JGTowerContainerDue to the scheme of Run3 towers, the following variables are not needed anymore:
1. LAr_et
2. Tile_et
3. Tilefrac
4. Adding back in towers with ET = 0
5. Utilizing the path resolver to access noise
so they are now removed fr...Due to the scheme of Run3 towers, the following variables are not needed anymore:
1. LAr_et
2. Tile_et
3. Tilefrac
4. Adding back in towers with ET = 0
5. Utilizing the path resolver to access noise
so they are now removed from the containerhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/20965Merge release/21.0.93 into 21.32019-02-15T14:07:46+01:00John Derek ChapmanMerge release/21.0.93 into 21.3This merge request merges the changes that went into the ~"21.0" branch between the [release/21.0.92](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) and [release/21.0.93](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.9...This merge request merges the changes that went into the ~"21.0" branch between the [release/21.0.92](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) and [release/21.0.93](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.93) tags into the ~"21.3" branch.
[release/21.0.93](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.93) contains the following ~"frozen\-tier0\-violating" merge requests:
- !20005
- !20021
- !20652
MRs in https://gitlab.cern.ch/atlas/athena/tags/nightly/21.0/2019-01-28T2159, accepted since https://gitlab.cern.ch/atlas/athena/tags/nightly/21.0/2019-01-06T2159:
- !20652: Adding variable HadronConeExclTruthLabelID to heavy-ion jet collections
- !20005: Propagate xAOD::EventInfo from digitization step onwards
- !20585: printing timestamp with the full list of arguments in a safe way (ATLINFR-2731)
- !20607: 21.0 fix nightly test2
- !20613: Sweeping !20595 from master to 21.0. Bugfix importing tools in RunTier0Test.py
- !20543: Sweeping !20514 from master to 21.0. Start versioning the CI reference files for the RunTier0Tests
- !20365: Sweeping !20318 from 21.3 to 21.0. Update art-include in TriggerTest
- !20364: Sweeping !20324 from 21.3 to 21.0. TriggerTest: add a few tests running on data
- !20323: Remove non-existing input file from HI build test
- !20321: update art include for RecExOnline
- !20262: PreStepPoint quantities in StepHistogramTool
- !20219: Updates for processing of G4Commands via the G4UImanager
- !20125: Sweeping !20078 from master to 21.0. Add script to summarise results of locally-ran trigger ART tests
- !20022: additional plotting option added
- !20021: Moving eta-phi correction for HIJetRec to calibration area (ATLHI-233 and ATLINFR-2834)
- !20013: Adds an option to turn on range cuts for gamma processes (conv, phot, compt)
- !20563: Changed permissions for m16e TCT test
- !20519: Removed mc16d TCT and replaced with mc16e
The full diff between [release/21.0.93](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.93) and [release/21.0.92](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.92) is available at https://gitlab.cern.ch/atlas/athena/compare/release/21.0.92...release/21.0.93https://gitlab.cern.ch/atlas/athena/-/merge_requests/21120WIP: code cleaning, keeping all towers, and pathresolver for noise file2019-02-25T22:57:03+01:00Chiao-Ying LinWIP: code cleaning, keeping all towers, and pathresolver for noise fileThis is the update for Run3 L1Calo simulation:
1. remove redundant variables
2. keeping all towers although they are without energy deposit
3. Noise file is accessed by pathresolverThis is the update for Run3 L1Calo simulation:
1. remove redundant variables
2. keeping all towers although they are without energy deposit
3. Noise file is accessed by pathresolverhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/21600pseudomerge of TrigEgammaAnalysisTools packages from rel 21 to master2019-03-04T16:23:09+01:00Joao Victor Da Fonseca Pintopseudomerge of TrigEgammaAnalysisTools packages from rel 21 to masterCommand used to build the workspace:
setupATLAS
asetup Athena,master,latest
git clone https://:@gitlab.cern.ch:8443/jodafons/athena.git
cd athena
git remote add upstream https://:@gitlab.cern.ch:8443/atlas/athena.git
git-packag...Command used to build the workspace:
setupATLAS
asetup Athena,master,latest
git clone https://:@gitlab.cern.ch:8443/jodafons/athena.git
cd athena
git remote add upstream https://:@gitlab.cern.ch:8443/atlas/athena.git
git-package-pseudomerge.py \
--packages Trigger/TrigAnalysis/TrigEgammaAnalysisTools \
--source archive/21.0-TrigMC \
--target upstream/master \
--stage 1
All conflicts were solved comparing the master and TrigMC. Most part of AcceptData strategy are taken from the master branch. Used the ctest and some trigger monitoring scripts (my script) to test everything.
This MR fixed the problem related in ATR-19448
See the discussion about the pseudo merge in: ATR-19005
Tagging: @fernando and @thrynova (ringer MT task) and @wsfreundJoao Victor Da Fonseca PintoJoao Victor Da Fonseca Pintohttps://gitlab.cern.ch/atlas/athena/-/merge_requests/21639Update packages:TrigEgammaAnalysisTools from archive/21.0-TrigMC to...2019-03-06T10:29:05+01:00Joao Victor Da Fonseca PintoUpdate packages:TrigEgammaAnalysisTools from archive/21.0-TrigMC to...Command used to build the workspace:
setupATLAS
lsetup git
asetup Athena,master,latest
git clone https://:@gitlab.cern.ch:8443/jodafons/athena.git
cd athena
git remote add upstream https://:@gitlab.cern.ch:8443/atlas/athena.git
git-pack...Command used to build the workspace:
setupATLAS
lsetup git
asetup Athena,master,latest
git clone https://:@gitlab.cern.ch:8443/jodafons/athena.git
cd athena
git remote add upstream https://:@gitlab.cern.ch:8443/atlas/athena.git
git-package-pseudomerge.py
--packages Trigger/TrigAnalysis/TrigEgammaAnalysisTools
--source archive/21.0-TrigMC
--target upstream/master
--stage 1 (and 2 after fix all conflicts)
All conflicts were solved comparing the master and TrigMC. Most part of AcceptData strategy are taken from the master branch. Used the ctest and some trigger monitoring scripts (my script) to test everything.
This MR fixed the problem related in ATR-19448
See the discussion about the pseudo merge in: ATR-19005
Tagging: @fernando and @thrynova (ringer MT task) and @wsfreundhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/21340WIP: ComponentAccumulator configuration for SCT and Pixel digitization2019-03-15T11:57:27+01:00Rupert TombsWIP: ComponentAccumulator configuration for SCT and Pixel digitizationDefine new style replacements for SCT_DigitizationConfig.py and PixelDigitizationConfig.py
With ConfigFlags definitions utilities and dependencies, including *ToolSetup replacements
Also makes minor updates to BCM_Digitization.
...Define new style replacements for SCT_DigitizationConfig.py and PixelDigitizationConfig.py
With ConfigFlags definitions utilities and dependencies, including *ToolSetup replacements
Also makes minor updates to BCM_Digitization.
Questions:
SCT_ReadCalibChipDataConfig.py lines 22-25: ComponentAccumulator folder tools do not have the tag features previously used here. Are these okay to neglect?
SCT_DigitizationConfig.py lines 75-83: To avoid migrating the ExperimentalDigi flag, doDetailedSurfChargesGen has not been migrated here. Is this still needed?
PixelCablingConfigNew.py line 60: Is this DBM logic correct?
OverlayConfigFlags.py line 15: `Overlay.EventStore` flag is questionable.https://gitlab.cern.ch/atlas/athena/-/merge_requests/2287521.9 from 21.3 Trigger L1Calo and Menu2019-06-24T10:42:04+02:00Joerg Stelzer21.9 from 21.3 Trigger L1Calo and MenuThis brings in all the changes from 21.3 that are related to the upgrade of L1Calo and the trigger menu.This brings in all the changes from 21.3 that are related to the upgrade of L1Calo and the trigger menu.https://gitlab.cern.ch/atlas/athena/-/merge_requests/22818Metadata cleanup2019-05-02T21:07:15+02:00Jack CranshawMetadata cleanupMake default for markIncomplete false rather than true.
Fix templates to not look for process metadata unless requested.
Fix EventFormat to set input, output container names in the constructor.
Use new property names for GenericMeta...Make default for markIncomplete false rather than true.
Fix templates to not look for process metadata unless requested.
Fix EventFormat to set input, output container names in the constructor.
Use new property names for GenericMetadataTool for CopyEventStreamInfo.
Retrieve all object versions on input and merge them before putting in the MetaCont.https://gitlab.cern.ch/atlas/athena/-/merge_requests/22643MdtCalibrationDbSvc MT migration v32019-06-22T20:55:03+02:00Chikuma KatoMdtCalibrationDbSvc MT migration v3Callback functions and member data cache are removed from `MdtCalibrationDbSvc` using `ReadCondHandle`. For example derived data in `"RtKey"` was originally recorded by `MdtCalibDbCoolStrTool` reading raw data from `"/MDT/RTBLOB"`. And t...Callback functions and member data cache are removed from `MdtCalibrationDbSvc` using `ReadCondHandle`. For example derived data in `"RtKey"` was originally recorded by `MdtCalibDbCoolStrTool` reading raw data from `"/MDT/RTBLOB"`. And the data was provided via detector store, removing previous IoV data. But in AthenaMT, derived data must be provided by an Alg via the condition store. So a new Alg with `WriteCondhandle` (`MdtCalibDbAlg`) is added to the condition sequence.
To schedule the derived data in the AthenaMT scheduler (--threads=1), the parent Svc and DbSvc are changed in to Tool and DbTool. And the private tools and condition handles are declared as properties either using auto-declaring initializer or declareProperty(). This should fix the read error found in a trigger test [https://gitlab.cern.ch/atlas/athena/merge_requests/21313] after merging the first MR [https://gitlab.cern.ch/atlas/athena/merge_requests/21512]. Since the same trigger test (test_mu_menu.sh) was not running in master (master,x86_64,centos7,gcc8,opt,2019-04-05T2141,Athena), I used another trigger test (test_mu_run_data.sh).
The trigger test, q221 and q431 output ESD was ok [[diff-root-run09-q431.txt](/uploads/5fa4ccd6a9027c55e095d93ab5087c71/diff-root-run09-q431.txt)[diff-root-run09-mu_run_data.txt](/uploads/8c71d577c2be75333d4a2eb38078a18f/diff-root-run09-mu_run_data.txt)[diff-root-run09-q221.txt](/uploads/ca29fd418dce30d2fdbed61d00cb16d4/diff-root-run09-q221.txt)]. The tier0 test was also ok [[RunTier0Tests.log](/uploads/1077eeda6f70af55d959fc082aa93bf2/RunTier0Tests.log)]. Thanks a lot for feedback from @wleight @rosati @diehl @oda .https://gitlab.cern.ch/atlas/athena/-/merge_requests/24133ByteStreamTest: Update test reference files.2019-06-12T10:02:55+02:00Scott SnyderByteStreamTest: Update test reference files.Fix test failures in master.Fix test failures in master.https://gitlab.cern.ch/atlas/athena/-/merge_requests/24076WIP: Merge release/21.3.14 into 21.9 branch2019-06-12T15:58:46+02:00John Derek ChapmanWIP: Merge release/21.3.14 into 21.9 branchThis merge request merges the changes from the ~"21.3" branch between [release/21.3.13](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.13)
and [release/21.3.14](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.14) (including...This merge request merges the changes from the ~"21.3" branch between [release/21.3.13](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.13)
and [release/21.3.14](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.14) (including the changes from the ~"21.0"
branch between [release/21.0.95](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.95)
and [release/21.0.97](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.97)) into the ~"21.9" branch.
This is done via a merge of [release/21.3.14](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.14).
(Last ~"21.3" release to be merged into ~"21.9" was
[release/21.3.13](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.13).)
[release/21.0.96](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.96) is a Tier0 release. It alters the output of heavy ion production jobs.
[release/21.0.97](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.97) is a Tier0 release. It is FT0-preserving.
[release/21.3.14](https://gitlab.cern.ch/atlas/athena/tags/release/21.3.14) is otherwise FT0-preserving.
Here is the full diff between https://gitlab.cern.ch/atlas/athena/compare/release/21.3.13...release/21.3.14
NB The changes in !22913 (which were part of [release/21.0.96](https://gitlab.cern.ch/atlas/athena/tags/release/21.0.96)). Have been
left out of this merge due to conflicts with the existing code in ~"21.9".https://gitlab.cern.ch/atlas/athena/-/merge_requests/24663WIP: Adjustments for LCG962019-07-17T12:57:48+02:00Walter LamplWIP: Adjustments for LCG96* Upgrade generator versions as needed
* Disable compilation of fReadCastor, castor libraries are deprecated
Still a compilation failure in Trigger (ATR-19993)
Tagging @akraszna and @emoyse for info.* Upgrade generator versions as needed
* Disable compilation of fReadCastor, castor libraries are deprecated
Still a compilation failure in Trigger (ATR-19993)
Tagging @akraszna and @emoyse for info.https://gitlab.cern.ch/atlas/athena/-/merge_requests/26847AthenaKernel, etc: ExtendedEventContext dynamic loader workarounds2019-10-07T02:45:50+02:00Scott SnyderAthenaKernel, etc: ExtendedEventContext dynamic loader workaroundsMove the helpers for finding MT thinning decisions from DataModelAthenaPool
to AthenaKernel.
As a result, I was seeing again bad_any_cast exceptions, because an internal
symbol used for any_cast was resolved to different address...Move the helpers for finding MT thinning decisions from DataModelAthenaPool
to AthenaKernel.
As a result, I was seeing again bad_any_cast exceptions, because an internal
symbol used for any_cast was resolved to different addresses in different
libraries, causing any_cast to spuriously fail.
Try to deal with this by introducing a set of out-of-line helper
functions for accessing the extended event context that we use
in preference to directly using the templated methods of EventContext.https://gitlab.cern.ch/atlas/athena/-/merge_requests/26786Migrate TagInfoMgr to AthCnvSvc, remove private MsgStream, move to ATH_MSG ma...2019-10-23T12:04:47+02:00Stewart Martin-HaughMigrate TagInfoMgr to AthCnvSvc, remove private MsgStream, move to ATH_MSG macrosMigrate TagInfoMgr to AthCnvSvc and remove private MsgStream which caused a race condition writing to log files (see also !23861). It's not a dangerous race condition, it just mangles logs, e.g.:
```
THistSvc ...Migrate TagInfoMgr to AthCnvSvc and remove private MsgStream which caused a race condition writing to log files (see also !23861). It's not a dangerous race condition, it just mangles logs, e.g.:
```
THistSvc 0 DEBUG regHist_i obj: 0x3024d800 id: /EXPERT/TrigFastTrackFinder_TauCore/roi_nTrk_zVtx s: 0TagInfoMgr VERBOSE updateAddress - Found CLID: 1223307417 - key: /MDT/TUBE_STATUS/DEAD_TUBE NOT TagInfo - do nothing
```
Cheers,
Stewarthttps://gitlab.cern.ch/atlas/athena/-/merge_requests/28042Fix logic error in adding MCTruthCommon augmentation tools in SUSY2019-11-16T16:00:18+01:00Giordon Holtsberg StarkFix logic error in adding MCTruthCommon augmentation tools in SUSY./cc @fmeloni @ljeanty @zmarshal @mgignac @crizzi @egramsta
This should fix things. This fixes errors like
```
AODtoDAOD 13:59:01 DecorateSUSYProcess: fileinfo.mc_channel_number 448455 is SUSY: True
AODtoDAOD 13:59:01 DecorateSUSYProce..../cc @fmeloni @ljeanty @zmarshal @mgignac @crizzi @egramsta
This should fix things. This fixes errors like
```
AODtoDAOD 13:59:01 DecorateSUSYProcess: fileinfo.mc_channel_number 448455 is SUSY: True
AODtoDAOD 13:59:01 DecorateSUSYProcess: fileinfo.mc_channel_number 448455 is SUSY: True
AODtoDAOD 13:59:01 Shortened traceback (most recent user call last):
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/jobOptions/PATJobTransforms/skeleton.AODtoDAOD_tf.py", line 106, in <module>
AODtoDAOD 13:59:01 else: include( "RecExCommon/RecExCommon_topOptions.py" )
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/jobOptions/RecExCommon/RecExCommon_topOptions.py", line 1335, in <module>
AODtoDAOD 13:59:01 include(DPDMaker)
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/jobOptions/DerivationFrameworkExotics/EXOT22.py", line 16, in <module>
AODtoDAOD 13:59:01 addStandardTruthContents()
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/python/DerivationFrameworkMCTruth/MCTruthCommon.py", line 310, in addStandardTruthContents
AODtoDAOD 13:59:01 schedulePostJetMCTruthAugmentations(kernel, decorationDressing)
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/python/DerivationFrameworkMCTruth/MCTruthCommon.py", line 293, in schedulePostJetMCTruthAugmentations
AODtoDAOD 13:59:01 AugmentationTools = augmentationToolsList
AODtoDAOD 13:59:01 File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AthDerivation/21.2.82.0/InstallArea/x86_64-slc6-gcc62-opt/python/DerivationFrameworkCore/DerivationFrameworkCoreConf.py", line 45, in _init_
AODtoDAOD 13:59:01 setattr(self, n, v)
AODtoDAOD 13:59:01 TypeError: Property MCTruthCommonPostJetKernel.AugmentationTools value [<DerivationFramework::SUSYSignalTagger/ToolSvc.MCTruthCommonSignalTagger at 0x7fe1534b8138>] is not a ConfigurableAlgTool nor a PublicToolHandle nor a string
```
where it complains that an item in the `m_augmentationTools` ToolArray is a list of tools, rather than a ToolHandle itself (rightly so). This affects current SUSY derivations that actually run on SUSY signal files and was only caught as a side effect of !27334 (@jojungge) that extended the SUSY DSID block to start including the RPVLL DSID as a "SUSY Signal".
This needs to be confirmed fix with the ART tests to ensure that it works again. As far as I know, that's the only test that will catch it because most SUSY derivations for MC are using ttbar (410470) which is not a SUSY signal (I hope it isn't...)https://gitlab.cern.ch/atlas/athena/-/merge_requests/27736Avoiding == 0. or != 0. comparison for pFlow charge2019-12-02T17:11:13+01:00Chris Malena DelitzschAvoiding == 0. or != 0. comparison for pFlow charge@mhodgkin reported in [ATLJETMET-796](https://its.cern.ch/jira/browse/ATLJETMET-796) that the charge of the pFlow object is compared to != 0.0 instead of using FLT_MIN. This has been hopefully changed now in all instances and also the co...@mhodgkin reported in [ATLJETMET-796](https://its.cern.ch/jira/browse/ATLJETMET-796) that the charge of the pFlow object is compared to != 0.0 instead of using FLT_MIN. This has been hopefully changed now in all instances and also the comparisons to 1e-9 where changed to FLT_MIN
A similar MR will be created for release 21.2. I chose a separate MR given that some files differed between 21.0 and 21.2.
Also tagging @wbalunas, @williams and @khoo for their information.https://gitlab.cern.ch/atlas/athena/-/merge_requests/24443WIP: Make EventSelectorAthenaPool as a base class of DoubleEventSelectorAthen...2020-01-12T10:53:23+01:00Tadej Novaktadej.novak@cern.chWIP: Make EventSelectorAthenaPool as a base class of DoubleEventSelectorAthenaPoolTo reduce the maintenance burden we want `DoubleEventSelectorAthenaPool` to base on `EventSelectorAthenaPool`. This effort is still a WIP but some base implementation runs now.
FYI @gemmeren, @mmuskinj, @jchapmanTo reduce the maintenance burden we want `DoubleEventSelectorAthenaPool` to base on `EventSelectorAthenaPool`. This effort is still a WIP but some base implementation runs now.
FYI @gemmeren, @mmuskinj, @jchapmanhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/25491xAOD::TrackParticle Covariance Matrix Evolution, 21.2 branch (2019.08.08.)2020-01-31T17:27:56+01:00Thomas StreblerxAOD::TrackParticle Covariance Matrix Evolution, 21.2 branch (2019.08.08.)This is meant as a replacement for !24240 and has been built on top of it.
Following the discussions with the tracking and reconstruction experts, this is an attempt at implementing a schema evolution for `xAOD::TrackParticle`. In the n...This is meant as a replacement for !24240 and has been built on top of it.
Following the discussions with the tracking and reconstruction experts, this is an attempt at implementing a schema evolution for `xAOD::TrackParticle`. In the new setup the covariance matrix of the defining parameters end up in two separate variables called "definingParametersCovMatrixDiag" and "definingParametersCovMatrixOffDiag". Making it possible to handle the diagonal and off-diagonal elements of the covariance matrix more easily in the I/O system.
The stored elements in "definingParametersCovMatrixOffDiag" are not directly the off-diagonal elements of the covariance matrix but rather the correlation coefficients between -1 and 1, which are better suited for subsequent lossy compression.
The `xAODMaker::TrackParticleCompressorTool` is also modified to optionally drop some of the off-diagonal elements (assumed to be uncorrelated).
A check requiring a positive covariance matrix determinant has also been added, as negative values were found to cause errors while rerunning FTAG vertex refitting in derivations.
Pinging @akraszna and @christos for them to comment if needed