-
Notifications
You must be signed in to change notification settings - Fork 45
Description
The new vecgeom 2 solid navigator in #1720 is 3–5⨉ slower than v1.0 because it does a full relocation at each distance calculation, and those relocations are discarded most of the time during tracking and especially during field propagation. There are still inconsistencies with bounding boxes and surface crossings. Additionally the Celeritas field propagation approach is different than that in VecGeom/Geant4 since we converge with direct distance calculations rather than use the safety distance as we approach a boundary.
The vecgeom state is also odd, because the "NavState" objects have two internal states, one of which is pretty much unused (and essentially inaccessible in vecgeom 1) in addition to a boundary state. Ideally we would only store and use one state.