athena merge requestshttps://gitlab.cern.ch/atlas/athena/-/merge_requests2024-03-22T13:20:55+01:00https://gitlab.cern.ch/atlas/athena/-/merge_requests/70047More test chains for delayed jets2024-03-22T13:20:55+01:00Lucas BezioMore test chains for delayed jetsAs discussed on [ATR-28836](https://its.cern.ch/jira/browse/ATR-28836), more test chains are added. Some are requiring 2jets to be delayed aiming to reduce the rate even with low pt threshold. Copies of the test chains with upper limit o...As discussed on [ATR-28836](https://its.cern.ch/jira/browse/ATR-28836), more test chains are added. Some are requiring 2jets to be delayed aiming to reduce the rate even with low pt threshold. Copies of the test chains with upper limit on timing are also added.https://gitlab.cern.ch/atlas/athena/-/merge_requests/69228Updating LAr EM NTuple creation to CA based configuration2024-02-26T13:13:58+01:00Mustafa Andre SchmidtUpdating LAr EM NTuple creation to CA based configurationThe configuration script for the LAr EM NTuple creation as well as the README file was changed to be compatible with the new CA-based configuration.The configuration script for the LAr EM NTuple creation as well as the README file was changed to be compatible with the new CA-based configuration.https://gitlab.cern.ch/atlas/athena/-/merge_requests/69154gFEX: fix bug in gTower class2024-02-22T22:06:42+01:00Cecilia ToscirigFEX: fix bug in gTower classWith this MR, a bug found in `gTower::getFWID` is fixed. This assigns the correct energy to some gTowers in the forward region, that were previously swapped. Consequently, this solves some mismatches found in the hw vs sw comparison for ...With this MR, a bug found in `gTower::getFWID` is fixed. This assigns the correct energy to some gTowers in the forward region, that were previously swapped. Consequently, this solves some mismatches found in the hw vs sw comparison for small-R jets and also improves results for large-R jets and MET quantities.https://gitlab.cern.ch/atlas/athena/-/merge_requests/69149Fix bug in gTower class2024-02-22T21:07:56+01:00Cecilia TosciriFix bug in gTower classWith this MR, a bug found in `gTower::getFWID` is fixed. This assigns the correct energy to some gTowers in the forward region, that were previously swapped. Consequently, this solves some mismatches found in the hw vs sw comparison for ...With this MR, a bug found in `gTower::getFWID` is fixed. This assigns the correct energy to some gTowers in the forward region, that were previously swapped. Consequently, this solves some mismatches found in the hw vs sw comparison for small-R jets and also improves results for large-R jets and MET quantities.https://gitlab.cern.ch/atlas/athena/-/merge_requests/67265Draft: Duplicate removal for `MultiTrajectory` and `TrackStorageContainer`2024-01-25T17:43:12+01:00Ioannis MaznasDraft: Duplicate removal for `MultiTrajectory` and `TrackStorageContainer`This is a proposal on how to handle decorations in `MultiTrajectory` and `TrackStorageContainer` through a separate class(`ActsTrk::DecorationHandler`).
related to EFTRACK-325
@tbold @jahredaThis is a proposal on how to handle decorations in `MultiTrajectory` and `TrackStorageContainer` through a separate class(`ActsTrk::DecorationHandler`).
related to EFTRACK-325
@tbold @jahredahttps://gitlab.cern.ch/atlas/athena/-/merge_requests/67636Draft: ATR-28329: Revert MR640182024-01-22T09:33:50+01:00Binbin DongDraft: ATR-28329: Revert MR64018Revert https://gitlab.cern.ch/atlas/athena/-/merge_requests/64018/ as it caused difference on `DL1dv01` b-tagger.\
See details of discussion here: https://gitlab.cern.ch/atlas/athena/-/merge_requests/64018#note_7391147
cc @dguest, @fdib...Revert https://gitlab.cern.ch/atlas/athena/-/merge_requests/64018/ as it caused difference on `DL1dv01` b-tagger.\
See details of discussion here: https://gitlab.cern.ch/atlas/athena/-/merge_requests/64018#note_7391147
cc @dguest, @fdibello, @ligang.https://gitlab.cern.ch/atlas/athena/-/merge_requests/67562Add convertor for PRD to xAOD PROD2024-01-10T18:48:27+01:00Edward MoyseAdd convertor for PRD to xAOD PROD
This introduces a new algorithm to convert PRD to xAOD PRDs for Muons (it could easily be extended to e.g. ITK as well).
This also adds the start of a unit test (more to come), and I renamed the existing Track conversion test (to make ...
This introduces a new algorithm to convert PRD to xAOD PRDs for Muons (it could easily be extended to e.g. ITK as well).
This also adds the start of a unit test (more to come), and I renamed the existing Track conversion test (to make the naming more precise).
cc @jojunggehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/67220Switch back to ACTS backend for ACTS tracking codes2023-11-23T16:20:51+01:00Tomasz BoldSwitch back to ACTS backend for ACTS tracking codesThis MR is an attempt to understand performance issue reported in: https://its.cern.ch/jira/browse/ATLSWUPGR-228
It technically reverts !66631
For review tagging @cvarni @ncalace @adyeThis MR is an attempt to understand performance issue reported in: https://its.cern.ch/jira/browse/ATLSWUPGR-228
It technically reverts !66631
For review tagging @cvarni @ncalace @adyehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/67131attempt to work around ATLASRECTS-78082023-11-15T20:59:37+01:00Walter Lamplattempt to work around ATLASRECTS-7808comment out problematic lines in Dumpers.py to get the CI going again.
ping @ssnyder, @akrasznacomment out problematic lines in Dumpers.py to get the CI going again.
ping @ssnyder, @akrasznahttps://gitlab.cern.ch/atlas/athena/-/merge_requests/64505Draft: Migrate creation and propagation metadata tools to a single tool with ...2023-11-03T10:24:18+01:00Maciej Pawel SzymanskiDraft: Migrate creation and propagation metadata tools to a single tool with two modesThis MR is to work on migrating pairs of tools used to create and propagate metadata with a single tool (per domain) with two modes.
The scope of this MR concerns _core_ tools, i.e. `EventStreamInfo`, `EventFormat`, and `FileMetaData`.
...This MR is to work on migrating pairs of tools used to create and propagate metadata with a single tool (per domain) with two modes.
The scope of this MR concerns _core_ tools, i.e. `EventStreamInfo`, `EventFormat`, and `FileMetaData`.
/cc @gemmeren @ametehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/66328Draft: Move ACTS tracking algorithms to ATLAS EDM backend2023-10-27T16:46:27+02:00Tomasz BoldDraft: Move ACTS tracking algorithms to ATLAS EDM backendWith this MR ACTS tracking would move to ATLAS EDM backend
Things do not compile however yet. Shaing this MR in order to get some help/hints.With this MR ACTS tracking would move to ATLAS EDM backend
Things do not compile however yet. Shaing this MR in order to get some help/hints.https://gitlab.cern.ch/atlas/athena/-/merge_requests/66374Adding in protection for a crash when dumping or converting GenEvent/HepMC3...2023-10-12T17:11:40+02:00R D SchafferAdding in protection for a crash when dumping or converting GenEvent/HepMC3...Adding in protection for a crash when dumping or converting GenEvent/HepMC3 events - problem is accessing the GenVertex position, sometimes gives segFault.
When investigating [AGENE-1803](https://its.cern.ch/jira/browse/AGENE-1803), I f...Adding in protection for a crash when dumping or converting GenEvent/HepMC3 events - problem is accessing the GenVertex position, sometimes gives segFault.
When investigating [AGENE-1803](https://its.cern.ch/jira/browse/AGENE-1803), I found that dumping EVNT events or converting them to xAODTruth would crash. These updates add in protection, but doesn't not solve the problem which seems to be in HepMC3. For this I made [AGENE-2231](https://its.cern.ch/jira/browse/AGENE-2231). Please refer to this for more details.R D SchafferR D Schafferhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/64960Draft: Adding back in EtaPtFilterTool for truth filtering with fix for missin...2023-09-28T19:43:16+02:00R D SchafferDraft: Adding back in EtaPtFilterTool for truth filtering with fix for missing lepton linksThis is a continuation of [!64793](https://gitlab.cern.ch/atlas/athena/-/merge_requests/64793#note_7000903).
This implements the missing truth filtering via EtaPtFilter. This is done only for the CA Hits to AOD production, i.e. it remai...This is a continuation of [!64793](https://gitlab.cern.ch/atlas/athena/-/merge_requests/64793#note_7000903).
This implements the missing truth filtering via EtaPtFilter. This is done only for the CA Hits to AOD production, i.e. it remains commented out in jobOpts. This uses the TruthParticleBuilder which was used in the past to go from GenEvent to TruthEvent - which is not xAOD formatted one. It also performed as a first step the filtering of the truth in a GenEvent to GenEvent step. Only the filtering is not done. This reduces the AOD by a few percent due to truth reduction. This MR also fixes a problem in the filtering where the parent child links can be lost for leptons with eta > 5.5. Note that dumpTruth.py was slighting changed to be more coherent in way one passes the CA arguments.
Pinging @zmarshal, @jchapman, @jcatmoreR D SchafferR D Schafferhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/62742Draft: Ensure CutFlowSvc must be configured2023-09-25T09:55:59+02:00Nicholas StylesDraft: Ensure CutFlowSvc must be configuredAs discussed in ATLPHYSVAL-939, it seems to be intended that `CutFlowSvc` must be configured, and indeed will potentially cause issues with mismatched weights/containers if it is not. However, due to the default value of the configurable...As discussed in ATLPHYSVAL-939, it seems to be intended that `CutFlowSvc` must be configured, and indeed will potentially cause issues with mismatched weights/containers if it is not. However, due to the default value of the configurable, this was never actually being enforced.
This MR changes the default value to enforce what is presumably the intention.
cc @tadej @jcatmorehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/55910Draft: Rework input metadata handling in CutFlowSvc2023-09-25T09:47:08+02:00Tadej Novaktadej.novak@cern.chDraft: Rework input metadata handling in CutFlowSvcThis one is a bit tricky and I would appreciate some input from experts. The issue is that `CutFlowSvc` needs some information before any client wants to setup a cut.
The main change is I now consistently defer initialisation of `CutFlo...This one is a bit tricky and I would appreciate some input from experts. The issue is that `CutFlowSvc` needs some information before any client wants to setup a cut.
The main change is I now consistently defer initialisation of `CutFlowSvc`. But it still does not work well in all cases, especially in CA-based config with shared writer.
/cc @tsulaia @amete @gemmeren @fwinkl @jcatmore @calpigiaTadej Novaktadej.novak@cern.chTadej Novaktadej.novak@cern.chhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/65865Draft: moving to build 4-vec with px, py, pz, m rather than px, py, pz, e2023-09-21T16:45:54+02:00R D SchafferDraft: moving to build 4-vec with px, py, pz, m rather than px, py, pz, eFrom discussion with @dgillber and @abuckley, move to build TruthParticle 4-vec from px, py, pz, m rather than px, py, pz, e, except for the case when the mass (or energy?) is negative. In this case, one continues to build them with px, ...From discussion with @dgillber and @abuckley, move to build TruthParticle 4-vec from px, py, pz, m rather than px, py, pz, e, except for the case when the mass (or energy?) is negative. In this case, one continues to build them with px, py, pz, e. Note that LHE/HepMC provides px, py, pz, e and m values.
This provides "reasonable" values for the mass from the 4-vectors, in particular for electrons which are in general far off 0.511 MeV when using e. I verified with H4l minitree comparison with and without the changes and only masses appear different above 0.001 in fractional difference.R D SchafferR D Schafferhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/65011ATLASRECTS-7688: xAODMissingET GCC 13 Fixes, main branch (2023.08.14.)2023-08-17T09:51:08+02:00Attila KrasznahorkayATLASRECTS-7688: xAODMissingET GCC 13 Fixes, main branch (2023.08.14.)Eliminated the GCC 13 warnings about bitwise operations between different enumeration types, like:
```
/build/atnight/localbuilds/nightlies/main--dev4LCG/athena/Event/xAOD/xAODMissingET/xAODMissingET/versions/MissingETBase.h:212:107: wa...Eliminated the GCC 13 warnings about bitwise operations between different enumeration types, like:
```
/build/atnight/localbuilds/nightlies/main--dev4LCG/athena/Event/xAOD/xAODMissingET/xAODMissingET/versions/MissingETBase.h:212:107: warning: bitwise operation between different enumeration types ('MissingETBase::Source::Category' and 'MissingETBase::Source::Type') is deprecated [-Wdeprecated-enum-enum-conversion]
static Types::bitmask_t electron(Region reg=FullAcceptance) { return ( Refined | Electron ) | reg; }
~~~~~~~ ^ ~~~~~~~~
/build/atnight/localbuilds/nightlies/main--dev4LCG/athena/Event/xAOD/xAODMissingET/xAODMissingET/versions/MissingETBase.h:219:107: warning: bitwise operation between different enumeration types ('MissingETBase::Source::Category' and 'MissingETBase::Source::Type') is deprecated [-Wdeprecated-enum-enum-conversion]
static Types::bitmask_t photon(Region reg=FullAcceptance) { return ( Refined | Photon ) | reg; }
~~~~~~~ ^ ~~~~~~
/build/atnight/localbuilds/nightlies/main--dev4LCG/athena/Event/xAOD/xAODMissingET/xAODMissingET/versions/MissingETBase.h:226:107: warning: bitwise operation between different enumeration types ('MissingETBase::Source::Category' and 'MissingETBase::Source::Type') is deprecated [-Wdeprecated-enum-enum-conversion]
static Types::bitmask_t tau(Region reg=FullAcceptance) { return ( Refined | Tau ) | reg; }
~~~~~~~ ^ ~~~
/build/atnight/localbuilds/nightlies/main--dev4LCG/athena/Event/xAOD/xAODMissingET/xAODMissingET/versions/MissingETBase.h:233:107: warning: bitwise operation between different enumeration types ('MissingETBase::Source::Category' and 'MissingETBase::Source::Type') is deprecated [-Wdeprecated-enum-enum-conversion]
static Types::bitmask_t muon(Region reg=FullAcceptance) { return ( Refined | Muon ) | reg; }
```
See: https://bigpanda.cern.ch/compsview/?nightly=main--dev4LCG_Athena_x86_64-el9-gcc13-opt&rel=2023-08-13T0730&ar=x86_64-el9-gcc13-opt&proj=Athena
At the same time made some functions in `MissingETBase::Status` `constexpr`, just for the fun of it. :stuck_out_tongue:
None of this should make any difference for the code, it's just to make the compiler happy.
Unfortunately I ended up changing a few more lines than absolutely necessary. This is because the MET files used a combination of tabs and spaces, which made my code editor and GitLab disagree on how the files should look. So I ended up converting all modified lines (and enums...) to only using spaces. :thinking:https://gitlab.cern.ch/atlas/athena/-/merge_requests/64947Draft: Fix EtaPtFilter to avoid some missing parent links for leptons2023-08-11T10:18:04+02:00R D SchafferDraft: Fix EtaPtFilter to avoid some missing parent links for leptonsThis is a continuation of [!64793](https://gitlab.cern.ch/atlas/athena/-/merge_requests/64793#note_7000903).
This implements the missing truth filtering via EtaPtFilter. This is done only for the CA Hits to AOD production, i.e. it remai...This is a continuation of [!64793](https://gitlab.cern.ch/atlas/athena/-/merge_requests/64793#note_7000903).
This implements the missing truth filtering via EtaPtFilter. This is done only for the CA Hits to AOD production, i.e. it remains commented out in jobOpts. This uses the TruthParticleBuilder which was used in the past to go from GenEvent to TruthEvent - which is not xAOD formatted one. It also performed as a first step the filtering of the truth in a GenEvent to GenEvent step. Only the filtering is not done. This reduces the AOD by a few percent due to truth reduction. This MR also fixes a problem in the filtering where the parent child links can be lost for leptons with eta > 5.5. Note that dumpTruth.py was slighting changed to be more coherent in way one passes the CA arguments.
Pinging @zmarshal, @jchapman, @jcatmoreR D SchafferR D Schafferhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/64569Draft: The first attempt to use status() instead of barcode() in Simulation2023-08-07T10:57:56+02:00Andrii VerbytskyiDraft: The first attempt to use status() instead of barcode() in SimulationThe first attempt to use status instead of barcode for the simulation.
The end goals are:
- 1) to be able to identify the origin of the particles and vertices from their status and not barcodes
- 2) to be able to use the `HepMC3::GenP...The first attempt to use status instead of barcode for the simulation.
The end goals are:
- 1) to be able to identify the origin of the particles and vertices from their status and not barcodes
- 2) to be able to use the `HepMC3::GenParticle::id()` and `HepMC3::GenVertex::id()` as unique identifiers of the particles, e.g. in `HepMCParticleLink`. In this way the usage of `barcode()` `property` of `GenParticle`a and `GenVertex` will be almost eliminated.
The 2) was already implemented by @jchapman as an option. See https://indico.cern.ch/event/1298224/contributions/5458615/attachments/2669897/4627904/Migration%20away%20from%20barcodes.pdf
The 1) requires a bit more changes and those are collected in this MR with the idea to split it later into small pieces.
Namely:
- a) Switching from the bare comparison of `status` property of particles to the classificators in `TruthUtils` ( e.g. `isStable`) See https://gitlab.cern.ch/atlas/athena/-/merge_requests/64579, https://gitlab.cern.ch/atlas/athena/-/merge_requests/64552 and similar. This is an ongoing work that touches a lot of code, but the changes are trivial.
- b) Switching from the classificators that use the `barcode()` directly as `int` to functions that use the underlying objects. See https://gitlab.cern.ch/atlas/athena/-/merge_requests/64571
This MR will also require the removal of the specification of templates `HepMC::is_simulation_particle()` for `int`.
- c) Change the definition of `isStable()`, `isPhysical()`,`isDecayed()`, i.e. ( status=1,2 particles) to take into account that particles produced in the simulation will have status `original_status + constant x times_particle_interacted`. Implemented in this MR.
- d) Drop the `Barcode` service from the `TruthSvc` and instead of increasing the barcode of each particle in the simulation increase the status of particle. Implemented in this MR.
- e) Change the references where it is needed. To be done.
@jchapman
The very beginninghttps://gitlab.cern.ch/atlas/athena/-/merge_requests/63947Set inheritance information for TrackMeasurementValidation.2023-08-02T11:18:58+02:00Goetz GayckenSet inheritance information for TrackMeasurementValidation.The inheritance information is need to allow using a xAOD::TrackValidationMeasurement container in expressions passed to the ExpressionParser.
This is used by the luminosity determination based on PixelCluster counting.The inheritance information is need to allow using a xAOD::TrackValidationMeasurement container in expressions passed to the ExpressionParser.
This is used by the luminosity determination based on PixelCluster counting.