Project Juggler merge requestshttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests2022-09-30T00:10:45Zhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/483fix: juggler should not build its EDM4eic since we pick up spack version2022-09-30T00:10:45ZWouter Deconinckfix: juggler should not build its EDM4eic since we pick up spack versionWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/485fix: avoid capture of non-variable structured binding2022-09-30T05:23:55ZWouter Deconinckfix: avoid capture of non-variable structured bindingWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/488fix: acts-19.9.0 modifies extents to use range1D<>2022-10-04T14:56:34ZWouter Deconinckfix: acts-19.9.0 modifies extents to use range1D<>Ref: https://github.com/acts-project/acts/pull/1424Ref: https://github.com/acts-project/acts/pull/1424Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/487Better service integration with strict service init ordering2022-10-04T19:53:54ZSylvester JoostenBetter service integration with strict service init orderinghttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/489Support late instantiation/initialization of services (stragglers)2022-10-05T00:14:12ZSylvester JoostenSupport late instantiation/initialization of services (stragglers)https://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/490move unported algorithms into 'todo' directories to separate them from finish...2022-10-11T12:25:42ZSylvester Joostenmove unported algorithms into 'todo' directories to separate them from finished codehttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/491Feat: Add infrastructure to manage algorithms by category2022-10-11T12:39:37ZSylvester JoostenFeat: Add infrastructure to manage algorithms by categoryhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/492Resolve "clang-tidy unhappy again"2022-10-12T18:35:56ZSylvester JoostenResolve "clang-tidy unhappy again"Closes #110Closes #110https://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/486algorithms: core should link publicly against Microsoft.GSL2022-10-18T19:12:54ZWouter Deconinckalgorithms: core should link publicly against Microsoft.GSLSince `gsl/gsl` appears in `geo.h` and other headers, it should be public in core.Since `gsl/gsl` appears in `geo.h` and other headers, it should be public in core.Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/493podio-0.16 introduces shared_ptr<CollectionIDTable>2022-10-18T22:13:41ZWouter Deconinckpodio-0.16 introduces shared_ptr<CollectionIDTable>Therefore we introduce `CollectionIDTable_ptr` which is what
`podio::ROOTReader::getCollectionIDTable()` returns.
The former `delete m_collectionIDs` in the PodioDataSvc destructor was
not necessary since we are not owning that pointer.Therefore we introduce `CollectionIDTable_ptr` which is what
`podio::ROOTReader::getCollectionIDTable()` returns.
The former `delete m_collectionIDs` in the PodioDataSvc destructor was
not necessary since we are not owning that pointer.Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/496feat: remove NPDet dependency2022-11-20T21:55:45ZWouter Deconinckfeat: remove NPDet dependencyNo need to specify the NPDet version in the container build args (just go with defaults) as it is not an actual dependency anyway.No need to specify the NPDet version in the container build args (just go with defaults) as it is not an actual dependency anyway.Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/494Updated ACTS seeding code fixing multiple issues2022-12-01T18:36:10ZYue Shi LaiUpdated ACTS seeding code fixing multiple issuesAvoid NaN and std::bad_alloc inside ACTS during the grid creation, due to specific pseudorapidity coverage, field strength, and minimum pT; custom association of hit to tracking surfaces; additional memory debugging checks
The following...Avoid NaN and std::bad_alloc inside ACTS during the grid creation, due to specific pseudorapidity coverage, field strength, and minimum pT; custom association of hit to tracking surfaces; additional memory debugging checks
The following issues with the previous code are addressed:
- std::bad_alloc inside ACTS for virtually any EIC acceptance coverage, field strength and minimum pT (!). Note that given an acceptance out to 3-4, the minimum pT has to be set very low, as ACTS does not permit this mandatory cut to be set by the momentum magnitude.
- Inefficient and sometimes incorrect hit-surface association, fixed by (re-)determine the hit-surface association through geometry service inside the seeding code. Removed source links as input, as this is now not needed anymore.
- Removed eicd/edm4eic inheritance, which appears to has side-effects impacting seeding efficiency at 40 degrees angleWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/495algorithms::detail::CachedBitGenerator: make min/max methods static2022-12-03T00:16:20ZDmitry Kalinkinalgorithms::detail::CachedBitGenerator: make min/max methods staticFixes a following compilation error:
```
In file included from external/algorithms/truth/src/MC2SmearedParticle.cpp:4:
In file included from external/algorithms/truth/include/algorithms/truth/MC2SmearedParticle.h:5:
In file included fro...Fixes a following compilation error:
```
In file included from external/algorithms/truth/src/MC2SmearedParticle.cpp:4:
In file included from external/algorithms/truth/include/algorithms/truth/MC2SmearedParticle.h:5:
In file included from external/algorithms/core/include/algorithms/random.h:6:
libcxx-11.1.0-dev/include/c++/v1/random:3645:51: error: call to non-static member function without an object argument
const size_t __logR = __log2<uint64_t, _URNG::max() - _URNG::min() + uint64_t(1)>::value;
~~~~~~~^~~
libcxx-11.1.0-dev/include/c++/v1/random:3777:18: note: in instantiation of function template specialization 'std::__1::generate_canonical<double, 53, algorithms::detail::CachedBitGenerator>' requested here
* _VSTD::generate_canonical<_RealType, numeric_limits<_RealType>::digits>(__g)
^
libcxx-11.1.0-dev/include/c++/v1/random:3741:17: note: in instantiation of function template specialization 'std::__1::uniform_real_distribution<double>::operator()<algorithms::detail::CachedBitGenerator>' requested here
{return (*this)(__g, __p_);}
^
libcxx-11.1.0-dev/include/c++/v1/random:4336:19: note: in instantiation of function template specialization 'std::__1::uniform_real_distribution<double>::operator()<algorithms::detail::CachedBitGenerator>' requested here
__u = _Uni(__g);
^
libcxx-11.1.0-dev/include/c++/v1/random:4275:17: note: in instantiation of function template specialization 'std::__1::normal_distribution<double>::operator()<algorithms::detail::CachedBitGenerator>' requested here
{return (*this)(__g, __p_);}
^
external/algorithms/core/include/algorithms/random.h:52:12: note: in instantiation of function template specialization 'std::__1::normal_distribution<double>::operator()<algorithms::detail::CachedBitGenerator>' requested here
return d(m_gen);
^
external/algorithms/truth/src/MC2SmearedParticle.cpp:33:40: note: in instantiation of function template specialization 'algorithms::Generator::gaussian<double>' requested here
const auto momentum = pgen * m_rng.gaussian<double>(0., m_smearing.value());
^
In file included from external/algorithms/truth/src/MC2SmearedParticle.cpp:4:
In file included from external/algorithms/truth/include/algorithms/truth/MC2SmearedParticle.h:5:
In file included from external/algorithms/core/include/algorithms/random.h:6:
libcxx-11.1.0-dev/include/c++/v1/random:3648:57: error: call to non-static member function without an object argument
const _RealType _Rp = static_cast<_RealType>(_URNG::max() - _URNG::min()) + _RealType(1);
~~~~~~~^~~
libcxx-11.1.0-dev/include/c++/v1/random:3650:36: error: call to non-static member function without an object argument
_RealType _Sp = __g() - _URNG::min();
~~~~~~~^~~
3 errors generated.
```https://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/498feat: flag USE_SYSTEM_ALGORITHMS to allow bypassing external/algorithms2022-12-06T18:56:12ZWouter Deconinckfeat: flag USE_SYSTEM_ALGORITHMS to allow bypassing external/algorithmsWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/499chore: acts-20.3.0 upgrade2022-12-20T17:25:21ZWouter Deconinckchore: acts-20.3.0 upgradeWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/500fix: rename Seedfinder to SeedFinder in acts-212023-01-05T00:50:27ZWouter Deconinckfix: rename Seedfinder to SeedFinder in acts-21Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/501chore: update to acts-21.1.0 (part 2)2023-01-06T01:37:48ZWouter Deconinckchore: update to acts-21.1.0 (part 2)Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/503feat: trigger physics_benchmarks with RECO=juggler2023-02-02T00:26:26ZWouter Deconinckfeat: trigger physics_benchmarks with RECO=jugglerWouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/504CalorimeterIslandCluster: allow specifying adjacency matrix in terms of cellI...2023-02-07T04:05:06ZDmitry KalinkinCalorimeterIslandCluster: allow specifying adjacency matrix in terms of cellID fieldsSee https://github.com/eic/juggler/pull/2See https://github.com/eic/juggler/pull/2Wouter DeconinckWouter Deconinckhttps://eicweb.phy.anl.gov/EIC/juggler/-/merge_requests/505PodioOutput: support PODIO 00-162023-02-08T05:06:13ZDmitry KalinkinPodioOutput: support PODIO 00-16See https://github.com/AIDASoft/podio/commit/3c8240486a884530130a33070566a35c10bcb8e1
Also, see discussion in https://github.com/AIDASoft/podio/issues/314 if you have questions about pointer ownership.See https://github.com/AIDASoft/podio/commit/3c8240486a884530130a33070566a35c10bcb8e1
Also, see discussion in https://github.com/AIDASoft/podio/issues/314 if you have questions about pointer ownership.