athena merge requestshttps://gitlab.cern.ch/atlas/athena/-/merge_requests2022-05-05T15:42:54+02:00https://gitlab.cern.ch/atlas/athena/-/merge_requests/52295Configuration for Variable Beamspot Simulation2022-05-05T15:42:54+02:00John Derek ChapmanConfiguration for Variable Beamspot SimulationIn MC21a (corresponding to 2002 data) we will simulate multiple (four) beamspot sizes to
take into account the effect of luminosity levelling.
The "beamspot vs mu" profile which will be used in the pile-up presampling step is compressed ...In MC21a (corresponding to 2002 data) we will simulate multiple (four) beamspot sizes to
take into account the effect of luminosity levelling.
The "beamspot vs mu" profile which will be used in the pile-up presampling step is compressed down to a single entry per "step". (Each step corresponds to a single beamspot size (and lumiblock).)
This compressed profile is then scaled to the job size (with the MC21a profile the minimum
supported simulation job size is 50 events).
Steps are not used to trigger separate jobs in simulation.
Tested in Athena and AthSimulation. Matching output for old and new-style configuration.
NB Samples produced using this configuration should be merged using HITSMerge_tf.py with the `PyJobTransforms/postInclude.SortInput.py` postInclude before being used as input to MC Overlay or pile-up Digitization. This postInclude ensures that all events in the output merged HITS file are sorted by lumiblock.
Should go in after !52509, !52603 and !52604.https://gitlab.cern.ch/atlas/athena/-/merge_requests/51714Fix Digitization_test_MC16a_Digi_tf_configuration_ctest after LAr pile-up too...2022-03-30T15:42:03+02:00Tadej Novaktadej.novak@cern.chFix Digitization_test_MC16a_Digi_tf_configuration_ctest after LAr pile-up tool cleanupFix `Digitization_test_MC16a_Digi_tf_configuration_ctest` after LAr pile-up tool cleanup.
Fixes ATLASSIM-5719.
/cc @jchapman @emoyseFix `Digitization_test_MC16a_Digi_tf_configuration_ctest` after LAr pile-up tool cleanup.
Fixes ATLASSIM-5719.
/cc @jchapman @emoysehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/50445Fixing Digitization test2022-02-21T11:43:28+01:00Pavol StrizenecFixing Digitization testThis should fix the ATLASRECTS-6821, reference was update for new object.This should fix the ATLASRECTS-6821, reference was update for new object.https://gitlab.cern.ch/atlas/athena/-/merge_requests/50288Migrate Beam.Type to be an enum2022-02-09T15:43:39+01:00Tadej Novaktadej.novak@cern.chMigrate Beam.Type to be an enumMigrate `Beam.Type` to be an enum.Migrate `Beam.Type` to be an enum.https://gitlab.cern.ch/atlas/athena/-/merge_requests/50270Migrate GeoModel.Run to be an enum2022-02-08T15:42:54+01:00Tadej Novaktadej.novak@cern.chMigrate GeoModel.Run to be an enumMigrate `GeoModel.Run` to be an enum.Migrate `GeoModel.Run` to be an enum.https://gitlab.cern.ch/atlas/athena/-/merge_requests/50019Drop support for Overlay and Embedding from PileUpEventLoopMgr and clean-up w...2022-02-18T21:42:45+01:00John Derek ChapmanDrop support for Overlay and Embedding from PileUpEventLoopMgr and clean-up whitespace (ATLASSIM-5648)Once !50572 is merged then the the `PileUpEventLoopMgr` will only be used in the pile-up digitization (pile-up presampling) workflow.
This allows the code to be greatly simplified, which will in turn make it easier to refactor it to supp...Once !50572 is merged then the the `PileUpEventLoopMgr` will only be used in the pile-up digitization (pile-up presampling) workflow.
This allows the code to be greatly simplified, which will in turn make it easier to refactor it to support reading HITS files containing `xAOD::EventInfo` rather than old-style `EventInfo`.
This merge request is mostly concerned with removing support for the Data/MC Overlay workflows and for the embedding workflow. The first two are run in production using the (thread-safe) DoubleEventSelector + the standard event loop managers and the same approach would most likely work best for emedding also.
I have made some whitespace/syntax clean-up in this merge request, but I would prefer to follow up on other changes of this nature in a separate MR, as the simplification of the class is holding up other developments.https://gitlab.cern.ch/atlas/athena/-/merge_requests/49872Update HITS and RDO test inputs for Run 2 reprocessing2022-01-25T00:03:23+01:00Tadej Novaktadej.novak@cern.chUpdate HITS and RDO test inputs for Run 2 reprocessingUpdate `HITS` and `RDO` test inputs for Run 2 reprocessing. Also add `_RUN2` suffix.
/cc @emoyse @elmsheus @jchapman @christosUpdate `HITS` and `RDO` test inputs for Run 2 reprocessing. Also add `_RUN2` suffix.
/cc @emoyse @elmsheus @jchapman @christoshttps://gitlab.cern.ch/atlas/athena/-/merge_requests/48551new sampling fraction for E-cells in RUN3 geometry2021-11-26T21:42:50+01:00Sanya Solodkovnew sampling fraction for E-cells in RUN3 geometryadjusting sampling fraction in gap/crack scintillators in RUN3 geometryadjusting sampling fraction in gap/crack scintillators in RUN3 geometryhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/48394AFP simulation + reconstruction2021-12-01T21:44:29+01:00Leszek AdamczykAFP simulation + reconstructionThis is quite large MR which includes:
Full AFP (ToF + SiD) GEANT4 simulation
Reconstruction of AFP ToFTracks (including creation of dedicated class in xAODForward
Improvements in reconstruction of AFP SiD tracks. We can split it in f...This is quite large MR which includes:
Full AFP (ToF + SiD) GEANT4 simulation
Reconstruction of AFP ToFTracks (including creation of dedicated class in xAODForward
Improvements in reconstruction of AFP SiD tracks. We can split it in few smaller if really required
GEANT4 time of flight (ToF) detector simulation was rebuild and tuned to final design. This includes many changes in AFP_G4_SD, AFP_Geometry, AFP_GeoModel and AFP_Digitization
ToF reconstruction was added in AFP_Reconstruction/AFP_LocReco and AFP_Reconstruction/AFP_LocRecoInterfaces
Achieved performances are discussed shortly here:
https://indico.cern.ch/event/1100611/contributions/4630436/attachments/2353345/4015229/talk.pdf
Transformation of silicon tracker (SiD) information from local coordinate system to global coordinate system was moved to the cluster level. It required changes is AFP_Reconstruction/AFP_SiClusterTools and AFP_Reconstruction/AFP_GlobalRecoTools
To store ToF information objects new class AFPToFTrack and relevant container were added to Event/xAOD/xAODForward Event/xAOD/xAODForwardAthenaPool
AFP reconstruction was switched ON in ForwardRec/share/ForwardRec_jobOptions.py
Description of the Forward region was updated from Run 1 setup to Run 2 (adding ALFA and AFP in proper position) ForwardSimulation/ForwardRegionGeoModel/share/LSS1Lout.csv and LSS1Rout.csv
Name of the ToF hit container was adjusted in `Simulation/Digitization/python/DigiOutput.py`
Change the name of beam pipe volume where fast simulation takes over GEANT4 transport of forward protons `BeamPipe::SectionF46` --> `BeamPipe::SectionF197` . It is again an update from run 1 to run 2 scheme.
Warning message in Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx about Unable to find volume in optical map was correct to proper side of the surfacehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/46603Enable updated TGC conditions for MC202021-09-22T11:00:37+02:00Tadej Novaktadej.novak@cern.chEnable updated TGC conditions for MC20Enable updated TGC conditions for MC20 by default.
/cc @jchapman @pberta @rmazini @emoyse @elmsheus @demers @smwang @jferrandEnable updated TGC conditions for MC20 by default.
/cc @jchapman @pberta @rmazini @emoyse @elmsheus @demers @smwang @jferrandhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/46600Fix bug in MergeTruthJetsTool where only the first event from each bunch-cros...2021-09-22T11:01:15+02:00John Derek ChapmanFix bug in MergeTruthJetsTool where only the first event from each bunch-crossing was checked.This one is needed for the Presampled RDO production for the Run-2 Reprocessing.
Thanks to @dandoy for spotting this bug which had been lurking for 3 years!
FYI @tlari, @mduehrss, @tadej, @pberta, @rmazini, @emoyse, @elmsheusThis one is needed for the Presampled RDO production for the Run-2 Reprocessing.
Thanks to @dandoy for spotting this bug which had been lurking for 3 years!
FYI @tlari, @mduehrss, @tadej, @pberta, @rmazini, @emoyse, @elmsheushttps://gitlab.cern.ch/atlas/athena/-/merge_requests/46157Fix missing pile-up jets/particles in pile-up presampling jobs2021-08-31T15:20:25+02:00Tadej Novaktadej.novak@cern.chFix missing pile-up jets/particles in pile-up presampling jobsFix missing pile-up jets/particles in pile-up presampling jobs by explicitly adding a prefix to output containers after wildcarding was removed in !45568.
Needed for reprocessing so marking as ~urgent.
/cc @akraszna @jchapman @mduehrss...Fix missing pile-up jets/particles in pile-up presampling jobs by explicitly adding a prefix to output containers after wildcarding was removed in !45568.
Needed for reprocessing so marking as ~urgent.
/cc @akraszna @jchapman @mduehrss @elmsheus @emoysehttps://gitlab.cern.ch/atlas/athena/-/merge_requests/45542Update conditions tags in digitization and overlay ART tests2021-08-02T03:02:59+02:00Tadej Novaktadej.novak@cern.chUpdate conditions tags in digitization and overlay ART testsUpdate conditions tags in digitization and overlay ART tests to make it run after !45356.
/cc @jchapmanUpdate conditions tags in digitization and overlay ART tests to make it run after !45356.
/cc @jchapmanhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/45356Activate FE-mask (ATLASRECTS-6437, ATLASRECT-6322)2021-08-11T08:24:59+02:00Soshi TsunoActivate FE-mask (ATLASRECTS-6437, ATLASRECT-6322)So far, the conditions tag was forced to pass all q-tests that are still using old conditions tag.
Since the q-tests update to use the latest global tag, such issue should not exist.
Thus, remove the unnecessary lines, and FE-masking is...So far, the conditions tag was forced to pass all q-tests that are still using old conditions tag.
Since the q-tests update to use the latest global tag, such issue should not exist.
Thus, remove the unnecessary lines, and FE-masking is activated.
Caveat:
- During the test, I found a bug in the conditions in MC.
PixelModuleFeMask-SIM-MC16-000-04 is buggy and used since OFLCOND-MC16-SDR-RUN2-03.
We definitely fix this conditions bug (not athena).
- I guess current q-tests still not update the global tag. So that, I guess all q-tests will fail.
This can be discussed during this MR.
- Trigger needs new folder, /PIXEL/Onl/PixelModuleFeMaskhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/45336Add RNGWrapper::setSeedLegacy methods to support setting the random number se...2021-09-01T17:22:46+02:00John Derek ChapmanAdd RNGWrapper::setSeedLegacy methods to support setting the random number seeds the old wayThese changes make it possible to reproduce the random number seeding from the old-style `AtDSFMTGenSvc` random number service within the `RNGWrapper` for q221. In this merge request `LArPileUpTool` and `LArTTL1Maker` have been adapted t...These changes make it possible to reproduce the random number seeding from the old-style `AtDSFMTGenSvc` random number service within the `RNGWrapper` for q221. In this merge request `LArPileUpTool` and `LArTTL1Maker` have been adapted to use the old approach to setting the seeds. Unclear whether anything else needs to be switched over.
This merge request also includes a small patch to `TRT_Digitization` configuration to ensure consistency between CA-based configuration and old-style configuration. Required after the setting of `ConfigFlags.Digitization.RandomSeedOffset` was altered slightly to match how offsets to random number seeds are applied in ~"21.0".
FYI @wlampl, @tadej, @mduehrss, @zmarshalhttps://gitlab.cern.ch/atlas/athena/-/merge_requests/45049MuonDigitization - insert property to shift t0 values between digitzation and...2021-07-12T17:16:25+02:00Johannes Junggeburthjohannes.josef.junggeburth@cern.chMuonDigitization - insert property to shift t0 values between digitzation and reconstructionHi.
in !44011 we switched on the MdtCalibrationDbTool by default as we thought that the calibration constants should be taken consistently from the database in both reconstruction and digitization. However, this caused a severe drop in ...Hi.
in !44011 we switched on the MdtCalibrationDbTool by default as we thought that the calibration constants should be taken consistently from the database in both reconstruction and digitization. However, this caused a severe drop in the muon reconstruction performance in simulation from `22.0.37` onwards (c.f the screenshot below) and was first reported by the trigger group in ATR-23768 and then mainly discussed in ATLASRECTS-6449. Actually, this development is not the cause of the feature observed in the ticket ATLASRECTS-6449 but definitely a blocker for its solution. We found that in earlier times the t0 in digitization and reconstruction was put to 800 and 817 ns by intention and that this shift actually matters in the reconstruction chain downstream, also (cf. the same screenshot attached below). We do not know what the 17 ns emulate exactly but for the sake of restoring the muon reconstruction performance in simulation, a property is added to the MdtDigitizationTool to shift back the t0 values towards the 800 ns.
![image](/uploads/da1ccff65ae985b1a2ddfca19f5294a2/image.png)
Tests have been performed thus far on 10k dimuon events with pt ranging between 2 and 15 GeV and within abseta<1.05
Tagging @mvanadia, @gartoni, @bernius, @jchapman, @okumura for information.
Also tagging: @sroe, @npetters, @goblirsc, @pgadow for another episode of the philosopher of the day
![image](/uploads/b92fecadf9fff0357375d9695a30e730/image.png)https://gitlab.cern.ch/atlas/athena/-/merge_requests/44364Improved digitisation campaign configuration2021-06-18T11:23:37+02:00Tadej Novaktadej.novak@cern.chImproved digitisation campaign configurationImproved digitisation campaign configuration:
- per-campaign `preInclude`s both for legacy and CA-based configuration
- separate ones for pile-up presampling
- pile-up config is fully collected in the `preInclude` file, enabled if minbia...Improved digitisation campaign configuration:
- per-campaign `preInclude`s both for legacy and CA-based configuration
- separate ones for pile-up presampling
- pile-up config is fully collected in the `preInclude` file, enabled if minbias inputs are present
- same output between both configurations
- a few extra flags had to be added to CA-based config
- `Digitization.InputBeamSigmaZ`: for beam spot reweighting, missing before
- `Digitization.PU.BunchStructureConfig`: for bunch structure configuration
- `Digitization.PU.ProfileConfig`: for pile-up profile configuration
- `Digitization.PU.ForceSequentialEventNumbers`: for forcing sequential event numbers for presampling (or validation)
Example MC20e presampling command:
```
Digi_tf.py \
--PileUpPresampling True \
--conditionsTag default:OFLCOND-MC16-SDR-RUN2-04 \
--digiSeedOffset1 170 --digiSeedOffset2 170 \
--digiSteeringConf "StandardSignalOnlyTruth" \
--geometryVersion default:ATLAS-R2-2016-01-00-01 \
--inputHITSFile ${HSHitsFile} \
--inputHighPtMinbiasHitsFile ${HighPtMinbiasHitsFiles} \
--inputLowPtMinbiasHitsFile ${LowPtMinbiasHitsFiles} \
--jobNumber 568 \
--maxEvents ${Events} \
--outputRDOFile ${DigiOutFileNameCG} \
--postExec 'all:CfgMgr.MessageSvc().setError+=["HepMcParticleLink"]' \
--postInclude 'default:PyJobTransforms/UseFrontier.py' \
--preInclude 'HITtoRDO:Campaigns/PileUpPresamplingMC20e.py' \
--skipEvents 0
```
Example MC20e pile-up digi command:
```
Digi_tf.py \
--conditionsTag default:OFLCOND-MC16-SDR-RUN2-04 \
--digiSeedOffset1 170 --digiSeedOffset2 170 \
--digiSteeringConf "StandardSignalOnlyTruth" \
--geometryVersion default:ATLAS-R2-2016-01-00-01 \
--inputHITSFile ${HSHitsFile} \
--inputHighPtMinbiasHitsFile ${HighPtMinbiasHitsFiles} \
--inputLowPtMinbiasHitsFile ${LowPtMinbiasHitsFiles} \
--jobNumber 568 \
--maxEvents ${Events} \
--outputRDOFile ${DigiOutFileNameCG} \
--postExec 'all:CfgMgr.MessageSvc().setError+=["HepMcParticleLink"]' \
--postInclude 'default:PyJobTransforms/UseFrontier.py' \
--preInclude 'all:Campaigns/MC20e.py' 'HITtoRDO:Campaigns/PileUpMC20e.py' \
--skipEvents 0
```
Example MC20e CA-based presampling:
```
Digi_tf.py \
--CA \
--PileUpPresampling True \
--conditionsTag default:OFLCOND-MC16-SDR-RUN2-04 \
--digiSeedOffset1 170 --digiSeedOffset2 170 \
--digiSteeringConf "StandardSignalOnlyTruth" \
--geometryVersion default:ATLAS-R2-2016-01-00-01 \
--inputHITSFile ${HSHitsFile} \
--inputHighPtMinbiasHitsFile ${HighPtMinbiasHitsFiles} \
--inputLowPtMinbiasHitsFile ${LowPtMinbiasHitsFiles} \
--jobNumber 568 \
--maxEvents ${Events} \
--outputRDOFile ${DigiOutFileNameCA} \
--postInclude 'PyJobTransforms.UseFrontier' \
--preInclude 'all:Campaigns.MC20e' \
--skipEvents 0
```
Note that this MR is a bit large and I'm happy to try to split it. It was just the easiest to do all at once. What is still missing is the ability to set flat pile-up profile in CA-based config, but the MR is large enough already.
ART tests are all green locally. No output change is expected.
Tagging a few people of interest: @jchapman @mduehrss @wlampl @pavol @jferrand @dhayden @jdandoy @abasalae @emoyse @elmsheushttps://gitlab.cern.ch/atlas/athena/-/merge_requests/44187PrepRawData hold directly a dynamic Eigen Matrix rather than ptr to it2021-06-11T03:02:49+02:00Christos Anastopouloschristos.anastopoulos@cern.chPrepRawData hold directly a dynamic Eigen Matrix rather than ptr to itRelates to https://its.cern.ch/jira/projects/ATLASRECTS/issues/ATLASRECTS-6393 where @ssnyder suggests to do something which is similar to what is already done here
We hold
```
std::unique_ptr<const Amg::MatrixX> m_localCovariance;
``...Relates to https://its.cern.ch/jira/projects/ATLASRECTS/issues/ATLASRECTS-6393 where @ssnyder suggests to do something which is similar to what is already done here
We hold
```
std::unique_ptr<const Amg::MatrixX> m_localCovariance;
```
And we have ctors with std::unique_ptr<const Amg::MatrixX> or const Amg::MatrixX*.
In this MR
try to change to
```
const Amg::MatrixX m_localCovariance;
```
in ctors
``const Amg::MatrixX*`` => ``const Amg::MatrixX&``
``std::unique_ptr<const Amg::MatrixX>`` ==> ``Amg::MatrixX&&`` retain the move semantics which also could avoid a copy here. e.g should avoid the allocation and a copy.
A lot clients need a set of repetitive changes from pointers to values here so ``CI`` will have compilation issues and will have to toggle prb to draft.
Notice the this relies also on this
```
A default constructor is always available, never performs any dynamic memory allocation, and never initializes the matrix coefficients. You can do:
MatrixXf b;
Here,
b is a dynamic-size matrix whose size is currently 0-by-0, and whose array of coefficients hasn't yet been allocated at all.
```
e.g a null prt to Dynamic matrix is now an empty dynamic Eigen matrix .
Mentioning @sroe and @akraszna
PS : another way to see the reason is this (taken from Eigen 3 Abi)
```
Matrix<T,Dynamic,Dynamic>
struct {
T *data; // with (size_t(data)%EIGEN_MAX_ALIGN_BYTES)==0
Eigen::Index rows, cols;
};
```
e.g a dynamic matrix is alreay a ptr. So what we have now is a unique_ptr, to a ptr, which then points to the payload. So what is tried is to cut down the num of ptrs to get to the payload.
It also should get rid of a few new and make_unique and allow for value copy, move semantics.https://gitlab.cern.ch/atlas/athena/-/merge_requests/43300ATLASRECTS-6307 Vol.VI PlaneSurfaces 22.0 remove constructors with Transform...2021-05-14T03:04:34+02:00Shaun RoeATLASRECTS-6307 Vol.VI PlaneSurfaces 22.0 remove constructors with Transform pointers.ATLASRECTS-6307 Vol.VI : Amend PlaneSurface; delete constructors using pointer to transform, replace with const ref transform where possible.ATLASRECTS-6307 Vol.VI : Amend PlaneSurface; delete constructors using pointer to transform, replace with const ref transform where possible.https://gitlab.cern.ch/atlas/athena/-/merge_requests/42694Remove linking to SGTests2021-04-21T03:03:22+02:00Frank WinklmeierRemove linking to SGTestsLinking against `SGTests` is only needed if the `StoreGate/SGtests.h` is
used. Not clear how we needed up with that mistake in so many packages.
Relates to the duplicate CLID errors discussed in ATEAM-731.Linking against `SGTests` is only needed if the `StoreGate/SGtests.h` is
used. Not clear how we needed up with that mistake in so many packages.
Relates to the duplicate CLID errors discussed in ATEAM-731.