Releases: acts-project/acts
Releases · acts-project/acts
v36.2.0
36.2.0
🚀 Features
- Refactor and generalize propagation validation (#3514) by @asalzburger
- Add GeoModel to G4 detector construction helper (#3530) by @benjaminhuth
- Bind some Gen1 geometry building functionality to python (#3448) by @benjaminhuth
- Telescope style seeding (#3300) by @ssdetlab
- GeoModelDetectorObjectFactory for flexible conversion of GeoModel objects to Acts Surfaces and Volumes (#3499) by @Berggren-Jonas
- (geo)
Surface::isOnSurface
gets tolerance parameter (#3544) by @paulgessinger - Max chi2 for outliers in Core
MeasurementSelector
(#3475) by @andiwand - (geo) Add name setter and move constructor to
TrackingVolume
(#3542) by @paulgessinger - Add displaced vertex generator (#3446) by @AichaMattouhi
🐛 Bug Fixes
- Add inline keyword to function PhotonConversion::generateChildren in PhotonConversion.hpp (#3516) by @Biblehome
- Make boost version checks work and use optimized range insertion (#3515) by @benjaminhuth
- Handle missing field in
SympyStepper
(#3525) by @andiwand - Change the component reducer for the GSF (to fix navigation issues) (#3521) by @benjaminhuth
- Clang Tidy issues in GeoModel plulgin (#3545) by @paulgessinger
◀️ Revert
🚜 Refactor
- Rework projector (#3453) by @andiwand
- Conditional import & refactor in python scripts related to material mapping (#3518) by @benjaminhuth
- Remove
calculateTrackQuantities
from Core CKF (#3536) by @andiwand - (geo) Use hidden friend for SourfaceBounds operators (#3543) by @paulgessinger
- Remove uses of
std::enable_if
(#3484) by @stephenswat - Remove unnecessary
activeBranches.empty()
condition from Core CKF (#3541) by @andiwand
📚 Documentation
- Remove link to clang-format image from docs (#3524) by @benjaminhuth
⚡ Performance
🧪 Testing
🛠️ Build
- Downgrade boost version error to warning (#3522) by @paulgessinger
⚙️ Miscellaneous Tasks
- Add cmake-format to pre-commit (#3497) by @paulgessinger
- Drop LCG 104 job (DD4hep too old for current ODD) (#3512) by @paulgessinger
- Update compiler warning flags (#3495) by @paulgessinger
v36.1.0
36.1.0
🚀 Features
- New material comparison script (#3389) by @asalzburger
- Make vertexing in Examples more configurable (#3406) by @andiwand
- Implement modified Bryson–Frazier (mBF) smoother as alternative to
GainMatrixSmoother
(#3420) by @andiwand - Add
TrackProxy::shallowCopy
(#3428) by @paulgessinger TruthVertexSeeder
for Examples (#3364) by @andiwand- Adding sympy stepper to python bindings (#3433) by @asalzburger
- Reverse track finding for Examples (#3200) by @andiwand
- Prototracks-to-Tracks converter & refactor (#3357) by @benjaminhuth
- Use track particle double matching by default in Examples (#3409) by @andiwand
- Splitting fill and update function (#3465) by @asalzburger
- Add CMake presets (#3135) by @andiwand
- Decouple SurfaceAccessor from source link implementations (#3445) by @ssdetlab
- (util) Grid type-erased output and comparisons (#3469) by @paulgessinger
- Variable size measurement for Examples (#3107) by @andiwand
- Change propagation algorithm to particle gun input (#3462) by @asalzburger
- (geometry)
RegularSurface
gets direction-lessisOnSurface
(#3500) by @paulgessinger
🐛 Bug Fixes
- Setting current surface fix for DetectorNavigator (#3401) by @asalzburger
- Fix and enable testing for RefittingAlgorithm (#3404) by @benjaminhuth
- Fix try all navigators after running with track finding (#3408) by @andiwand
- Add default value to ReadOnly in ScoreBasedAmbiguityResolution (#3418) by @Ragansu
Vertex::setPosition(Vector3)
should only set position (#3421) by @andiwand- Comparison error in DirectNavigator (#3424) by @benjaminhuth
VectorTrackContainer::removeTrack_impl
(#3427) by @andiwand- (sonar) Move/forward, avoid slicing, noexcept destructors (#3396) by @paulgessinger
- Improve CKF error handling and fix path limit abortion (#3436) by @andiwand
- Correct handling of outliers and holes for track statistics (#3438) by @andiwand
- Handle holes after measurement selection in Core CKF (#3413) by @andiwand
- Fix proto layer range for straw surfaces (#3443) by @XiaocongAi
- Next round of RefittingAlgorithm fixes and hash checks (#3430) by @benjaminhuth
- Remove residual mentions of C++17 (#3455) by @stephenswat
- Select binning dimension in cuboid volume builder (#3463) by @AJPfleger
- (gx2f) Constrain update to initial volume (#3411) by @AJPfleger
- Avoid segfaults in bin adjustments (#3472) by @benjaminhuth
- Skip outliers in
GreedyAmbiguityResolution
(#3452) by @andiwand - Really handle holes after measurement selection in Core CKF (#3474) by @andiwand
- Minor fixes to detray and traccc plugins (#3483) by @stephenswat
- Ensure ODD cleanup if sequencer stops in Examples Python tests (#3471) by @andiwand
- Add missing newline for
Sequencer
timing.csv
in Examples (#3508) by @andiwand
🚜 Refactor
- RootMaterialDecorator as default for the ODD (#3415) by @benjaminhuth
- Rework
particles_selected
handling in Python Examples (#3423) by @andiwand - Explicit
checkPathLength
andisValid
intersection check (#3416) by @andiwand - Single tree for
RootMeasurementWriter
(#3417) by @andiwand - Remove
lastHierarchySurfaceReached
fromNavigator
(#3237) by @andiwand - Resolve surfaces on initialization in
Navigator
(#3283) by @andiwand - Remove
ProtoTrackTruthMatcher
in Examples (#3410) by @andiwand - Disable copy&move for
TrackStateType
(#3451) by @andiwand - Use Core CKF extrapolation after inwards extension in Examples (#3195) by @andiwand
- Physmon: enlarge etaRange for GX2F to match KF settings (#3412) by @AJPfleger
- Rework initial
qOverP
sigma in Examples (#3422) by @andiwand - Split
GainMatrixUpdater
compilation (#3486) by @paulgessinger - (geometry) Surface merging returns ordering (#3468) by @paulgessinger
- Remove dfelibs from dependencies (#3489) by @paulgessinger
- Change the definition of the rotation parameters (#2021) by @XiaocongAi
- Split
KalmanVertexUpdater
by dimension (#3503) by @paulgessinger - Remove FPE mask #2284 (marked as #2348) (#3510) by @AJPfleger
⚡ Performance
- Use
SympyStepper
overEigenStepper
in Examples (#3459) by @andiwand - Optimize SourceLink creation, track state assignment (#3466) by @paulgessinger
🛠️ Build
- Remove extra minimum cmake versions, set policies (#3398) by @paulgessinger
- Improve traccc dependency loading (#3478) by @stephenswat
- Bump minimum Eigen version to v3.4.0 (#3511) by @paulgessinger
- Cleanup cmake options, fix detray plugin (#3509) by @paulgessinger
⚙️ Miscellaneous Tasks
- Clean LCG setup (#3405) by @andiwand
- Do not copy parameters without ref Surface in TrackProxy (#3426) by @andiwand
- Add unit test seed filter objects -- part 1 (#3402) by @CarloVarni
- Re-enable Exa.TrkX builds (#3431) by @benjaminhuth
- Update MacOS dependencies (#3447) by @andiwand
- Use
ParticleHypothesis
for q/p handling in a few more cases (#3456) by @andiwand - Disable clang-tidy for external dependencies (#3477) by @stephenswat
- Fix
build_performance
GitHub CI job after #3135 (#3487) by @andiwand - Run performance job only on main by @paulgessinger
- Rework physmon chains (#3460) by @andiwand
- Use pre-commit for CI lint (#3464) by @paulgessinger
- Bump clang-format to v18.1.8 (#3496) by @paulgessinger
- Bump histcmp to 0.6.7 to try to fix yerr issue (#3504) by @paulgessinger
- Bump minimum GeoModel version to 6.3.0 (#3476) by @andiwand
v36.0.0
36.0.0
🚀 Features
Any
(andSourceLink
) gain ability to assign different types (#3317) by @paulgessinger- Add reader for Athena dumps used by GNN4ITk (#3310) by @benjaminhuth
- Wire grid size for
AMVF
andAdaptiveGridSeeder
to Python in Examples (#3329) by @andiwand Surface::toStream
overload without stream argument (#3335) by @paulgessingerVariableSizeSubspace
(#3331) by @andiwand- GSF Debugger (#2682) by @benjaminhuth
- Silence excessive verbosity of the IVF Algorithm in Examples (#3343) by @pbutti
- Detray plugin geometry (#3299) by @EleniXoch
- Add
nCleanVtx
toVertexPerformanceWriter
in Examples (#3352) by @andiwand - Select space points used to fill the seeding grid via delegate function. Add experimentCuts support (#3342) by @pbutti
- Add compatibility for PODIO 1.x (#3360) by @paulgessinger
- Improve Athena Dump reader (#3358) by @benjaminhuth
- Gen2 navigation debugged (#3365) by @asalzburger
- Allow exclusion of pdg ids in ParticleSelector (#3394) by @benjaminhuth
🐛 Bug Fixes
- Switch to layer targeting in any case, remove condition to skip to boundaries (#3280) by @benjaminhuth
- Configuration of highOccupancyConfig for itk Seeding example (#3295) by @pbutti
- GeoModelHelper update to remove of detail namespace (#3324) by @asalzburger
- (gx2f) Compatible with non-Vector-TrackContainer (e.g. in Athena) (#3333) by @AJPfleger
- (vertexing) IterativeVertexFinder config takes const field (#3341) by @paulgessinger
- Unit test hough transform and fix identifier bug (#3332) by @dimitra97
- Fixing macOS (arm64) build by including ostream (#3350) by @asalzburger
- GeoModel plugin (#3351) by @asalzburger
- Re-enable Exa.TrkX build without CUDA, make configuration explicit (#3353) by @benjaminhuth
- Clean includes in
Geant4Manager
(#3362) by @andiwand - SonarQube fixes as follow up to #3337 (#3339) by @paulgessinger
- Downgrade Pythia8 to v10 from v12 (#3384) by @paulgessinger
- Fix and refactor digitization parametrization in Examples (#3386) by @andiwand
- Use 70% truth matching threshold for
VertexPerformanceWriter
in Examples (#3368) by @andiwand - Poke at Pythia8 to make it reproducible (#3392) by @paulgessinger
- Fixing division that was causing FPE (#3397) by @CarloVarni
🚜 Refactor
- Replace C-style
type_t
withstd::type_t
(#3301) by @AJPfleger - 🚨 BREAKING: Remove
overstepLimit
fromEigenStepper
(#3224) by @andiwand - 🚨 BREAKING: Axis improvements: move from detail + CTAD (#3257) by @paulgessinger
- 🚨 BREAKING: Update TrackingVolume constructors (#3250) by @paulgessinger
- 🚨 BREAKING: Remove
Measurement
from Core (#3282) by @andiwand - Unify the GPU device selection ExaTrkX; local variables declaration in FRNN lib (#2925) by @hrzhao76
- 🚨 BREAKING: Remove
CylinderBounds::inside3D
(#3204) by @andiwand - (geometry) Surface merging uses custom exception (#3334) by @paulgessinger
- (gx2f) Change type of Gx2fnUpdateColumn to uint32_t (athena compatability) (#3336) by @AJPfleger
- 🚨 BREAKING: BinningValue becomes a strong enum (#3337) by @paulgessinger
- Do not allocate memory if the surface is connected with a detector el… (#3069) by @junggjo9
- Cleaning the code for filling cylindrical grid (#3344) by @CarloVarni
- 🚨 BREAKING: Rewrite
BoundaryCheck
; Rename toBoundaryTolerance
and split out inside checks (#3170) by @andiwand - 🚨 BREAKING: Use track container in Core
CKF
and pass track proxies to delegates (#3161) by @andiwand - 🚨 BREAKING: Track EDM brush over (#3192) by @andiwand
- Cluster features for GNN pipeline (#3356) by @benjaminhuth
- Truth graph metrics for Exa.TrkX with separate algorithm (#3354) by @benjaminhuth
- 🚨 BREAKING: Split propagator options (#3181) by @andiwand
- 🚨 BREAKING: Refactor navigator options (#3182) by @andiwand
- 🚨 BREAKING: Use c++20 concept to define insert function for different types of seed collections (#3367) by @CarloVarni
- 🚨 BREAKING: Clean up
GainMatrixUpdater
a bit (#3387) by @andiwand - 🚨 BREAKING: Refactor direct navigator initialization (#3183) by @andiwand
- Refactor
RootTrackStateWriter
in Examples (#3374) by @andiwand - 🚨 BREAKING: Move
Navigator
external surfaces into options (#3189) by @andiwand - Make the MagneticFieldContext & GeometryContext to be hard types (#3349) by @junggjo9
- Use
requires
in Track EDM (#3388) by @paulgessinger - 🚨 BREAKING: Remove redundant variables from Seed filter state (#3393) by @CarloVarni
📚 Documentation
- Update links to avoid redirects (#3297) by @AJPfleger
- Update linkcheck (#3307) by @AJPfleger
- Update linkcheck again (#3316) by @AJPfleger
- Update link to format dockerfile (#3371) by @paulgessinger
- Label as docs changes to rst files (#3373) by @CarloVarni
- Load linkcheck ignore patterns from URL (#3400) by @paulgessinger
🧪 Testing
- Reduce navigator tests with TryAll as reference (#3311) by @AJPfleger
- Move
Navigator
consistency checks to integration tests (#3315) by @andiwand - Use ACTS logging for Navigator tests (#3312) by @AJPfleger
- Reduce number of combinations in TrackParametersDatasets (#3370) by @paulgessinger
🛠️ Build
- Change the way coverage is enabled (#3318) by @paulgessinger
- (deps) Bump SonarSource/sonarcloud-github-c-cpp from 2 to 3 (#3338) by @dependabot[bot]
- (deps) Bump actions/labeler from 4 to 5 (#3291) by @dependabot[bot]
- Public Header Relocatability, main branch (2024.06.18.) (#3303) by @krasznaa
- Bump minimum required C++ standard to 20 (#3345) by @paulgessinger
⚙️ Miscellaneous Tasks
- Replace legacy limits with std::numeric_limits or similar for consistency (#3298) by @AJPfleger
- Update black-version and pre-commit mirror (#3305) by @AJPfleger
- Generalise job size_t to type_t (#3302) by @AJPfleger
- Bump cmakeperf version to work around numpy issue (#3314) by @paulgessinger
- Add SonarQube / SonarCloud configuration (#3321) by @paulgessinger
- Extend black formatting to jupyter notebooks (#3304) by @AJPfleger
- Fix sonarqube workflow (#3323) by @paulgessinger
- Fix sonarqube workflow (#3325) by @paulgessinger
- Remove sonar workflow skip condition (#3326) by @paulgessinger
- Fix a number of SonarQube reliability issues (#3328) by @paulgessinger
- (release) Replace release script with git cliff (#3322) by @paulgessinger
- Bump histcmp to v0.6.6 (#3347) by @paulgessinger
- Update CI job to newer OS (drop ubuntu 20.04, centos7/8) (#3227) by @AJPfleger
- Switch macOS build to use CMake-based dependencies (#3346) by @paulgessinger
- Add GeoModel Plugin to CI (#3327) by @benjaminhuth
- Re-enable the Examples unit tests in the CI (#3355) by @paulgessinger
- Correct variables name ACTS_BUILD_EXAMPLES_UNIT_TESTS to ACTS_BUILD_EXAMPLES_UNITTESTS (#3369) by @CarloVarni
- Fix two issues raised by sonar (#3376) by @paulgessinger
- Move missing include test from c++17 to c++20 (#3377) by @CarloVarni
- Add pythia8 particles and vertices to physmon output (#3375) by @paulgessinger
- Drop
IWYU
(#3390) by @andiwand - Use C++20 concepts unconditionally (#3385) by @paulgessinger
- Bump pybind11 to v2.13.1 (#3399) by @paulgessinger
v35.2.0
🚀 Features
- Silence DD4HEP if requested (#3263) by @ntadej
- Add
TryAllNavigator
(#2849) by @andiwand CylinderVolumeStack
(#3065) by @paulgessinger- (gx2f) Support non-diagonal covariances (#3240) by @AJPfleger
- Add
TryAllOverstepNavigator
(#2850) by @andiwand - Geo model detector elements, converters (#3256) by @benjaminhuth
- (gx2f) Support n-dimensional measurements (#3264) by @AJPfleger
- Change to detector json converter for detray (#3277) by @asalzburger
- Adding some functionality to material mapping checks (#3266) by @asalzburger
- [breaking] (gx2f) generalise ndf calcualtion for error
NotEnoughMeasurements
(#3278) by @AJPfleger - Introduce scope failure threshold helper (#3290) by @paulgessinger
- Establishing Detector from GeoModel with db blueprint (Gen2) (#3289) by @asalzburger
- Middle SP z selection as result of grid binning (#3286) by @CarloVarni
- Cylinder and Disc surface merging (#3288) by @paulgessinger
🐛 Bug Fixes
- Enable gx2f-only mode in physmon (#3243) by @AJPfleger
- Correct first, then draw for SVG portals (#3244) by @asalzburger
- Remove examples binaries relics (#3251) by @AJPfleger
- Correct name string for some writers (#3252) by @AJPfleger
- Applying patch at the right time (#3246) by @asalzburger
- Put geomodel-G4 python bindings to correct place (#3258) by @benjaminhuth
- Add some missing headers for GCC 14 (#3259) by @benjaminhuth
- Setup with dependencies: robust python bindings (#3262) by @AJPfleger
- Loading TGeo geometry from volumes with global transform != 1 (#3236) by @pbutti
- (gx2f) Use temporary track container (#3247) by @AJPfleger
- Early exit in the seeding if there are no space points for top/bottom… (#3284) by @CarloVarni
- (gx2f) Forward propagation error (#3296) by @AJPfleger
🚜 Refactor
- Use unique_ptr for GlueVolumeDescriptor (#3245) by @paulgessinger
- Physmon: almost same settings for GX2F and KF (#3248) by @AJPfleger
- Truth tracking examples: fix ODD setup and make default (#3270) by @AJPfleger
- Physmon: full pT range for GX2F (#3275) by @AJPfleger
- [breaking] (gx2f) remove
zeroField
option and make implicit (#3276) by @AJPfleger - (gx2f) Make constant TrackStatePropMask (#3293) by @AJPfleger
- (gx2f) Clean up logging before material PR (#3294) by @AJPfleger
📚 Documentation
⚡ Performance
- Avoid two divisions in parameter estimation from seeds (#3287) by @CarloVarni
🧪 Testing
- Remove missed unused boost includes (#3260) by @AJPfleger
- Add for
safeExp()
(#3261) by @AJPfleger
🛠️ Build
- Exclude Examples tests from Core tests, phony target (#3279) by @paulgessinger
⚙️ Miscellaneous Tasks
- Update deprecated pydantic functions (#3249) by @AJPfleger
- Add dependabot configuration (#3265) by @paulgessinger
v35.1.0
Refactor
- Add output format option in material_mapping.py (#3071) (360fc15) (@ShujieL)
- Add more comparison types for root files (#3147) (7b0a47e) (@CouthuresJeremy)
- Remove target volume estimation from
Navigator
(#3217) (0002ab1) (@andiwand) - Explicit
nullptr
checks inNavigator
(#3218) (538a1fa) (@andiwand) - Backport navigation rewrite changes (#2846) (57fd232) (@andiwand)
- Use
double
forCylinderBounds::inside
(#3210) (273278b) (@andiwand) - Early exit for
CylinderBounds::inside
(#3207) (8a8e54a) (@andiwand) - Early exit for
AnnulusBounds::inside
(#3206) (72e2720) (@andiwand) - Move boundary check implementations to
VerticesHelper
(#3205) (eb86774) (@andiwand) - Refactor Core CKF finalization (#3188) (2e0ebfe) (@andiwand)
Feature
- Introduce delegate for the sourcelink creation and the measurement selection (#3198) (e268209) (@goetzgaycken)
- Manual
Propagator
initialization andAnySurfaceReached
aborter (#3208) (a48fa8a) (@andiwand) SympyStepper
(#3150) (d7aa303) (@andiwand)- Adding some more options to the odd_full_chain (#3179) (3681185) (@asalzburger)
- Enable simulation from GeoModel (#3202) (ccf3dc8) (@asalzburger)
- Smearing for straw surfaces (#3197) (fa10f5e) (@dimitra97)
Fix
- Codecov coverage badge - correct branch (#3232) (e607d9c) (@AJPfleger)
- Material loading to portals, forwarding of volumes in detector building (#3226) (3802fe9) (@asalzburger)
- Fix
EigenStepper
step upscaling (#3152) (8ad346b) (@andiwand) - Fix breaking
EigenStepper
change (#3223) (dd3bc6c) (@andiwand) - Correctly pass calibrationContext to calibrator (#3219) (67427db) (@goetzgaycken)
- Adding another parameter in the json configuration (#3216) (24f3582) (@dimitra97)
- Clang-format Regex (#3211) (8b06339) (@asalzburger)
- Fix Core CKF segfault with fitted params (#3203) (1dfef95) (@andiwand)
- Add missing header for compilation with GCC 14 (#3201) (05b2347) (@benjaminhuth)
Test
- Improve VerticesHelperOnHyperPlane (#3228) (6f54ccf) (@AJPfleger)
- Refactor nested namespaces (#3230) (d8f615f) (@AJPfleger)
- Remove unused boost includes and namespaces (#3229) (d13dc2b) (@AJPfleger)
- Exception check for
drawMeasurement()
(#3214) (2c84cd7) (@AJPfleger) - Add test bench for material effects (#3185) (6932aa9) (@AJPfleger)
- Make eBoundTime-check more readable (#3212) (6e96763) (@AJPfleger)
- Generalise unit test (#3209) (cb9af28) (@AJPfleger)
Ci
- Disable metric tracking for now (ee99ecf) (@paulgessinger)
- Update to gcovr=7.2 (#3221) (1a7a926) (@AJPfleger)
- Reset threshold after #3222 (#3225) (4745e24) (@AJPfleger)
- Version bump github actions (#3220) (8553575) (@AJPfleger)
- Add token + temporarily increase threshold (#3222) (464b4bb) (@AJPfleger)
- Bump codecov-action to v4 (#3215) (50fc28f) (@AJPfleger)
Chore
- Naming of other navigation delegates (#3199) (a25c1da) (@asalzburger)
- Rename navigation delegates (#3196) (eeb854a) (@asalzburger)
Build
v35.0.0
Breaking
- Use
std::string_view
foraddColumn
in track EDM (#3187) (7120c6b) (@andiwand) - Removing PlanarCluster, PlanarClusterization, IdenficiationModule and… (#3177) (6ba0582) (@asalzburger)
- Refactor CKF branch stopper to allow stop and keep tracks (#3102) (bed53b2) (@andiwand)
Refactor
- Simplify layer handling in
Navigator
(#3190) (a16e3e6) (@andiwand) - Remove
SourceLinkAccessorConcept
(#3171) (5a00e86) (@andiwand) - Rework Core
CKF
material interactions a bit (#3167) (8130574) (@andiwand) - Common function to store tracks in Core
CKF
(#3164) (3574807) (@andiwand) - Share code between stepper benchmarks (#3162) (e4a3ec9) (@andiwand)
- Remove step trial count from
ConstrainedStep
(#3160) (d1d90b3) (@andiwand) - Accumulated minor changes and for track finding (#3103) (acdf38f) (@andiwand)
- Replace C-style casts (#3146) (eae64a4) (@AJPfleger)
- Force custom enum conversion in Json Plugin (#3144) (234012a) (@andiwand)
Chore
- Use Fatras log level for propagation (#3191) (c43e308) (@andiwand)
- Use recent track finding improvements in
full_chain_itk.py
(#3163) (38d9aa7) (@andiwand) - Clean up clang-tidy (#3145) (8821e7b) (@AJPfleger)
Feature
- Removing SYCL Plugin (#3186) (66511b6) (@asalzburger)
- Examples can run sim/digi on ODD with Gen1 and Gen2 geometry (#3175) (67acd8a) (@asalzburger)
- Athena Ambiguity Resolution Algorithm (#3139) (91e7033) (@Ragansu)
- Reintroduce branch stopping on measurement in Core CKF (#3172) (320253c) (@andiwand)
- Error parameterisation (and assignment) for geometric digitisation (#2815) (666d7aa) (@asalzburger)
- Binned surface material detray (#3174) (2e56da5) (@asalzburger)
- Robust surface matching for Geant4 (#3169) (58a036b) (@asalzburger)
- Material validation using core components (MM6) (#3096) (1246c91) (@asalzburger)
- Make Geant4 surface mapper configurable (#3157) (992d86d) (@asalzburger)
- Show gen-1/2 geometry in obj (#3159) (b55bbb0) (@asalzburger)
- Remove special treatment of cylindrical grids (#3154) (30323d4) (@asalzburger)
- Allow for container geoID generator in DD4hep Plugin (#3155) (322ab53) (@asalzburger)
Fix
- Fix my local build after #3139 (#3178) (b7e5b03) (@andiwand)
- Order of geometry Id/material assignment in the DetectorBuilder (#3176) (4a8ab5b) (@ssdetlab)
- MaterialInteractionAssignment empty intersections safety check (#3158) (16ac510) (@ssdetlab)
- Updated detray json surface grid conversion (#3156) (41c0e87) (@fredevb)
Test
Performance
- Remove positive definite check from smoothing (#3128) (c351b35) (@andiwand)
- Try fast pow for
EigenStepper
step size scaling (#3153) (620069e) (@andiwand) - Cache particle hypothesis (#3151) (94ce634) (@andiwand)
Ci
- Add clang-tidy check for C-style casts (#3149) (53b292e) (@AJPfleger)
v34.1.0
Refactor
- Remove obsolete
__future__
imports in python (#3141) (ee8bec9) (@AJPfleger) - Remove zero width unicode characters (#3143) (609e3e9) (@AJPfleger)
- TrackingVolume and Volume interface + functionality (#3064) (12b8611) (@paulgessinger)
- Remove unreachable code (#3122) (44f1fea) (@AJPfleger)
- Brush over python: remove unused imports and variables (#3131) (23d6a03) (@AJPfleger)
- Set track state prop masks inclusively (#3138) (6db09dd) (@AJPfleger)
- Remove
blockMult
fromboundToCurvilinearTransportJacobian
(#3127) (bbed999) (@andiwand) - Accumulated
EigenStepper
brush-over (#3130) (e0633f3) (@andiwand) - Align stepper benchmarks (#3133) (eadd65d) (@andiwand)
- Accumulated vertexing changes in Examples (#3121) (43f86a6) (@andiwand)
- Make pile-up configurable for
full_chain_odd.py
and change default to 200 (#3115) (4c57acb) (@andiwand) - Brush over unused parameters (#3106) (e657b4a) (@AJPfleger)
- Refactor how the bound state covariance is handled without transport (#3104) (4461ca2) (@andiwand)
Fix
- Attempt fix for
BinningValue
deserialization (#3142) (dcbf067) (@andiwand) - Exclude unreachable cds.cern.ch from docs check (#3140) (614e537) (@AJPfleger)
- Add schema_version to podio edm.yml (#3132) (8fce1a7) (@wdconinc)
- Codecov coverage badge (#3108) (93fc13d) (@AJPfleger)
- Add measurements as external surfaces to navigator (#3100) (7542eb8) (@AJPfleger)
- Conventionalcommits.org SSL_ERROR_BAD_CERT_DOMAIN (#3113) (63c47de) (@AJPfleger)
Performance
- Improve stepper performance with
sqrt
overhypot
(#3137) (f6bc8b4) (@andiwand) - Use curvilinear for material states in CKF (#3125) (a21bdf0) (@andiwand)
- Share first smoothed state from filtered in smoothing (#3129) (5ed2a2f) (@andiwand)
- Benchmark
StraightLineStepper
(#3134) (7ef81e8) (@andiwand)
Documentation
- Fix parameter name in RootSpacepointWriter (#3123) (bdf9ae1) (@CouthuresJeremy)
- Remove old-style file comments (#3105) (80c4981) (@AJPfleger)
Feature
- Process and count holes + unit test (#3112) (45e76e7) (@AJPfleger)
- Add basic regions support to G4 example (#3061) (d1511d0) (@ntadej)
- Add root seed writer (#3126) (7562d50) (@CouthuresJeremy)
- Add ability to store particle outcome and do it for Geant4 (#3068) (301ba29) (@ntadej)
- Stop branches based on number of outliers in Examples track finding (#3116) (edd5661) (@andiwand)
- Stop propagation after all measurements are found (#3118) (1da1a5a) (@AJPfleger)
- Initial sigma
qop
coefficients for ExamplesTrackParamsEstimationAlgorithm
(#3111) (f88bf42) (@andiwand) - Add counter
processedStates
(#3119) (24eb208) (@AJPfleger) - Add counts for discovered and selected tracks and stopped branches in Examples track finding (#3114) (085727c) (@andiwand)
- Allow to created BinnedMaterialMaps from configured ProtoGridMaterialMaps (#3109) (69b747b) (@asalzburger)
- Branch aborter for track finding in Examples (#3098) (a2a0ac5) (@andiwand)
- Bind version info to Python (#3110) (455a2c0) (@andiwand)
- "Stay on seed" for track finding in Examples (#3089) (219fbc5) (@andiwand)
- Example material mapping using new core mapper (MM5) (#3094) (a54444f) (@asalzburger)
- Add primary vertex density and contamination to
VertexPerformanceWriter
in Examples (#3085) (f3a13ca) (@andiwand)
v34.0.0
Breaking
- Replace
Surface
FreeVector
input with position and direction (#2933) (6ba2e2d) (@andiwand) - Refactor
Surface::boundToFreeJacobian
to use free instead of bound vector (#2811) (c908d51) (@andiwand) - Remove smoothing and extrapolation from core CKF (#2722) (d9f775f) (@andiwand)
Feature
- Deduplicate seeds during track finding in Examples (#3088) (22730e1) (@andiwand)
- Two-way CKF example (#3066) (d1f4939) (@timadye)
- Material mapper in core (MM4) (#3087) (21cbbf7) (@asalzburger)
- Introduce material accumulation interface (MM3) (#3020) (6a36ee4) (@asalzburger)
- Pythia8 label secondary vertices based on proximity in Examples (#3048) (4935604) (@andiwand)
- Allow extrapolation from filtered states in TrackHelpers (#3078) (3991615) (@andiwand)
- Method to add components to an existing track state (#3075) (a8a032e) (@andiwand)
- Vertex classification for
VertexPerformanceWriter
in Examples (#3044) (05620d7) (@andiwand) - Allow different assignment candidate methods (MM2) (#3016) (7d9ddad) (@asalzburger)
- Encapsulate assignment of material interactions to material surfaces (MM1) (#3015) (fc3f250) (@asalzburger)
- Add TransformRange helper (#3060) (2b51bcb) (@paulgessinger)
- Json I/O for GridMaterial (#3059) (38ddf62) (@asalzburger)
Chore
- Update ParticleDataTable.hpp (#2908) (539f2c9) (@paulgessinger)
- Improved debugging outputs for
GainMatrixSmoother
(#3077) (9c8141e) (@andiwand)
Refactor
- Faster computation for binary search (#3095) (b9251ca) (@CarloVarni)
- Change the MultiLayerSurfacesUpdater to use the local position and direction (#3041) (e03bcd6) (@dimitra97)
- Change logger level for conversion fail (#3092) (5d3461f) (@AJPfleger)
- Improve CKF MeasurementSelector construction (#3093) (f19e1e9) (@andiwand)
- Introduce
CurvilinearSurface
(#2814) (da1eda6) (@andiwand) - Rewrite measurement selector (#3083) (3203649) (@CarloVarni)
- Reserve memory in advance and move object instead of copying (#3091) (545f6b7) (@CarloVarni)
- Do not allocate smoothed track state components in CKF (#3086) (e22fef9) (@andiwand)
- Remove
constexpr
fromMultiTrajectory
functions (#3073) (1374baa) (@andiwand) - Use
makeX
to construct tracks and track states (#3074) (93c3dd0) (@andiwand) - Move parameter transform helpers out of
detail::
(#3070) (1549ccb) (@andiwand) - Avoid double-static cast in HepMC3Particle.cpp (#3055) (bafcc45) (@AJPfleger)
- Remove some bound value access from CylindricalDetectorHelper (#3056) (aefffb3) (@paulgessinger)
- Always order by event number for ROOT input in Examples (#3046) (e9943d3) (@andiwand)
Performance
- Avoid creation of unused string in CKF (#3090) (2bdcb77) (@goetzgaycken)
Ci
- Add clang-tidy check for nested namespace definitions (#3084) (6883f31) (@AJPfleger)
- Bump actions versions used in CI (#3019) (6e95af5) (@paulgessinger)
- Fix herald URL (#3058) (eeadbb4) (@paulgessinger)
Fix
- Fix
make_error_code(TrackExtrapolationErrorCategory)
(#3076) (b0c64a0) (@andiwand) - Wrong network size written to onnx (#3072) (adebd58) (@Corentin-Allaire)
- Geant4 transformation conversion (#3051) (4271243) (@ssdetlab)
- Telescope missing stereo angle (#3063) (258ca53) (@Corentin-Allaire)
- Remove obsolete forward declaration AbstractVolume (#3057) (5655f98) (@paulgessinger)
Documentation
- Missing white papers section in RTD (#3067) (9e72306) (@AJPfleger)
v33.1.0
Feature
- Use truth vertex EDM in Examples (#2998) (3eb0b4f) (@andiwand)
- Add json IO for GridAccess delegates (#3047) (0982f68) (@asalzburger)
- Write track classification in
TrackSummaryWriter
in Examples (#3043) (6f989c2) (@andiwand) - New global / bound to grid local access schema (#3039) (30f97ea) (@asalzburger)
- Geant4SurfaceProvider optimization (#3025) (c3eea1c) (@ssdetlab)
- Update Open Data Detector to v4.0.1 (#2992) (4f33d42) (@asalzburger)
- Add possibility to rotate the trapezoid bounds (#2583) (a606f8a) (@junggjo9)
- Write truth matching in
VertexPerformanceWriter
(#2969) (afebfab) (@andiwand) - Python bindings for telescope like detector (#3006) (737ed7e) (@asalzburger)
Documentation
- Remove empty style guide and fix gender neutral language (#3049) (e9ea680) (@AJPfleger)
- Restore doxygen warnings as errors (#3033) (6d1cf04) (@paulgessinger)
Fix
- Use correct path length derivatives when computing the curvilinear covariance for a zero step propagation (#2910) (8329f20) (@goetzgaycken)
- Correct install RPATH in Python example bindings (#3040) (9c9bedd) (@ntadej)
- Gap translations in Blueprint Helper (#3027) (93b4383) (@ssdetlab)
- Geant4 transform conversion (#3038) (44dd2ab) (@asalzburger)
- Tweak AMVF config with time in Examples (#2985) (dac4a44) (@andiwand)
- DetectorVolume containment check (#2895) (d244dee) (@ssdetlab)
- More precise track parameter estimation for high curvature tracks (#2982) (28c3133) (@beomki-yeo)
- Robust perigee propagation in
HelicalTrackLinearizer
(#2930) (4d56bab) (@andiwand)
Refactor
- Remove AbstractVolume (#3030) (e033607) (@paulgessinger)
- Central truth matching for tracks in Examples (#2904) (69f7217) (@andiwand)
- Use track weight for vertex truth matching in Examples (#3024) (49e815c) (@andiwand)
- OrientedSurface improvements (#3026) (eb90483) (@paulgessinger)
- Refactor OpenDataDetector path discovery in Examples (#3036) (682d208) (@andiwand)
- Range1D becomes special case of RangeXD (#3023) (572c49a) (@paulgessinger)
- TrackingVolume/Volume cleanup (#3031) (248a2ab) (@paulgessinger)
- Remove VolumeBoundsPtr typedef (#3032) (226c844) (@paulgessinger)
- Tweak
full_chain_odd.py
(#3035) (3a4c1d4) (@andiwand) - Remove BVH navigation remnants (to be reimplemented) (#3029) (ccc1975) (@paulgessinger)
- Unconditionally use blocked mult in EigenStepper (#3009) (f25a727) (@paulgessinger)
Ci
- Switch to /usr/bin/time for measuring time + memory in physmon (#3018) (4599bca) (@paulgessinger)
- Bump to macOS 13 (#3022) (6507d84) (@paulgessinger)
- More build job count reductions (22c4d40) (@paulgessinger)
- Bump macOS dependency version package (#2993) (bc62a10) (@paulgessinger)
- Switch to
/usr/bin/time
for measuring time + memory in physmon (#3007) (d455e02) (@paulgessinger)
Chore
- Remove explicit (bin0/bin1) access to MaterialSlab (#3028) (4cb1e5b) (@asalzburger)
- Avoid double listing breaking changes (#3011) (0dbb361) (@paulgessinger)
Test
Build
- Change DD4hep library detection for unit tests (#3008) (d623e63) (@paulgessinger)
v33.0.0
Breaking
- AMVF
do3dSplitting
->doFullSplitting
(#3004) (4a204ce) (@andiwand) - Template the seed finder on the grid type (#2957) (f0294bd) (@CarloVarni)
- Move and Grid Density finders to cpp (#2973) (5eb39c3) (@paulgessinger)
ImpactPointEstimator
moves to cpp file (#2971) (554afbd) (@paulgessinger)- Fix vertex finding for seeds with
z=0
(#2917) (123746c) (@andiwand) - Hard-code vertex fitter, finder + density combinations (#2952) (8ccefe1) (@paulgessinger)
- Add
IVertexFinder
interface, use in vertexing (#2948) (84c039f) (@paulgessinger) - Use
Delegate
for track linearizers (#2946) (0002567) (@paulgessinger) - Use BasePropagator interface in vertexing (#2886) (9eac779) (@paulgessinger)
- Use
Delegate
for parameter extraction (#2881) (86e62ab) (@paulgessinger) - Remove
input_track_t
template parameters (#2880) (89858d9) (@paulgessinger) - Untemplate
VertexInfo
andVertexingOptions
(#2878) (c907d17) (@paulgessinger) - Untemplate
Vertex
(#2877) (dfd4356) (@paulgessinger) - Vertex InputTrack becomes concrete type (#2876) (a9a41c7) (@paulgessinger)
Feature
- Save vertex seed (#2885) (2664480) (@felix-russo)
- Add a mask to the grid for iterating on bins with middle sp candidates (#2974) (61b5ca0) (@CarloVarni)
- ROOT LinkDef
vector<vector<int>>
and co in Examples (#3000) (fd0e845) (@andiwand) - Unbiased trackstates for fitters that do not smooth (#2999) (9fcfb7e) (@AJPfleger)
- Add kaon hypothesis to
ParticleHypothesis
(#2990) (6c910b0) (@plariono) - Use
Barcode
for vertex ID inVertexPerformanceWriter
(#2970) (9854009) (@andiwand) - Add setup script which also handles dependencies (#2926) (6a25545) (@andiwand)
- Add uber EDM4hep reader (#2939) (c0c26e8) (@paulgessinger)
- Add particle ID to track states in
RootTrackStatesWriter
(#2977) (e11e99b) (@altsybee) - Add new error
NotEnoughMeasurements
(#2981) (15ace85) (@AJPfleger) - Write
sumPt2
inVertexPerformanceWriter
(#2929) (89450aa) (@andiwand) - Full_chain_itk.py uses eta-dependent cuts (#2934) (4e25aa2) (@timadye)
- Geant4 Gdml surface provider + Unit Test (#2906) (1e436b2) (@ssdetlab)
- Use seeding performance in score for Optuna and Orion automatic tuning (#2662) (3a9c0bf) (@LuisFelipeCoelho)
- WriteFloat for seeding performance in SeedingPerformanceWriter.cpp (#2654) (c4f5a41) (@LuisFelipeCoelho)
- Closest forward intersection (#2923) (ab41e0b) (@andiwand)
Refactor
- New DetectorNavigator tests and some fixes (#2988) (b7f6cc0) (@ssdetlab)
- AMVF error handling and
zt
splitting (#2828) (6cc2c88) (@felix-russo) - Refactor wiring for number of hits in simulation (#3001) (6fd0337) (@andiwand)
- Safety check for spherical coordinates poles (#2980) (a1b40bc) (@ssdetlab)
- Move large parts of Vertexing to
.cpp
files (#2953) (e9ab1f7) (@paulgessinger) - Remove
duplicatedPredictor
fromCKFPerformanceWriter
(#2964) (d5d0890) (@andiwand) KalmanVertex(Track)Updater
interface change (#2955) (1e6c8b3) (@paulgessinger)- Set common initial covariance for vertex fitting (#2947) (fc68c59) (@andiwand)
- Consistently use
mm
for time in examples IO (#2916) (19464fa) (@andiwand) - Delete the examples binaries (#2685) (a5b3864) (@paulgessinger)
- Assert to be
on surface
for surface functions with free param input (#2932) (3fa1300) (@andiwand) - Remove target reached from standard aborters (#2912) (1df9175) (@andiwand)
- Remove
autodiff
(#2793) (c2e1e6e) (@andiwand)
Performance
- Tile 8×8 covariance matrix multiplication (#1181) (6182aef) (@stephenswat)
Fix
- Wire optional seed result in
TrackDensityVertexFinder
after #2917 (#3002) (abdddc6) (@andiwand) - Add error message to
NotEnoughMeasurements
(#3003) (6ef4e4e) (@AJPfleger) - Flag for secondary vertex labeling in
Pythia8ProcessGenerator
(#2989) (1cc1759) (@andiwand) - Fix
TruthVertexFinder
for not reconstructed particles (#2979) (e06342c) (@andiwand) - Propagate final covariance for trackstates (#2949) (ae56406) (@AJPfleger)
- Improved actor and navigation break (#2972) (a42f23b) (@AJPfleger)
- Missing
inline
inIterativeVertexFinder.ipp
(#2975) (60cfa75) (@paulgessinger) - Downgrade RootParticleWriter log message (#2958) (fc75469) (@paulgessinger)
- Fix truth matching in
TruthVertexFinder
in Examples (#2937) (dd65874) (@andiwand) - Digital smearer reading from JSON (#2959) (139fe6f) (@paulgessinger)
- Default arguments definition in physmon (#2962) (148e0e3) (@AJPfleger)
- Geant4SurfaceProvider gdml schema validation fix (#2956) (0c753b1) (@ssdetlab)
- Inline HoughTransformUtils member functions (#2944) (7118769) (@goblirsc)
- TrackStateType printout in wrong order (#2950) (026b481) (@timadye)
- Propagate initial vertex time variance for AMVF w/o time (#2936) (b50dd08) (@andiwand)
- Fix AMVF find single track vertices (#2931) (f0f0449) (@andiwand)
Build
- Fix potential interaction with GeoModel's bundled json (#2995) (3d96535) (@paulgessinger)
- EDM4hep python bindings go to separate shared lib (#2996) (16e558f) (@paulgessinger)
Chore
- Remove LinearizerConcept (#2997) (f2a19a6) (@paulgessinger)
- Adding GeoModel as possible thirdparty (#2924) (8f19749) (@asalzburger)
- Some updates to the release script (#2779) (a9984a9) (@paulgessinger)
- Update pytest-check version (#2938) (e9da852) (@AJPfleger)
Documentation
- Fix formatting and spelling (#2984) (032dd9a) (@AJPfleger)
- Document Track EDM (#2797) (d043298) (@paulgessinger)
- A tiny bit of documentation for the Combinatorial Kalman Filter (#2805) (d5f264e) (@goetzgaycken)
Ci
- Add physmon truth tracking for the GX2F (#2966) (6fb49f1) (@AJPfleger)
- Bump histcmp to v0.6.5 (#2961) (181b257) (@paulgessinger)
- Reduce build job count to 2 (#2954) (003a0e8) (@paulgessinger)
- Add LCG105 CI jobs on gitlab (#2921) (1a4778a) (@paulgessinger)
- Remove WIP from merge sentinel config (#2941) (252e557) (@paulgessinger)