Skip to content

Commit

Permalink
Merge branch 'main' into fix/tracking-volume-portal
Browse files Browse the repository at this point in the history
  • Loading branch information
kodiakhq[bot] authored Jan 15, 2025
2 parents cad208a + f060123 commit c0af7ca
Show file tree
Hide file tree
Showing 61 changed files with 1,729 additions and 2,308 deletions.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
338 changes: 132 additions & 206 deletions Core/include/Acts/Navigation/DetectorNavigator.hpp

Large diffs are not rendered by default.

11 changes: 0 additions & 11 deletions Core/include/Acts/Navigation/NavigationState.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@

#include "Acts/Definitions/Algebra.hpp"
#include "Acts/Definitions/Units.hpp"
#include "Acts/Geometry/GeometryContext.hpp"
#include "Acts/Surfaces/BoundaryTolerance.hpp"
#include "Acts/Utilities/Delegate.hpp"
#include "Acts/Utilities/Intersection.hpp"

#include <any>
Expand Down Expand Up @@ -59,15 +57,6 @@ struct NavigationState {
/// The current direction
Vector3 direction = Vector3(0., 0., 0.);

/// The current absolute momentum
double absMomentum = 0.;

/// The current absolute charge
double absCharge = 0.;

/// The current magnetic field
Vector3 magneticField = Vector3(0., 0., 0.);

/// The current detector in processing
const Detector* currentDetector = nullptr;

Expand Down
14 changes: 7 additions & 7 deletions Core/include/Acts/Propagator/AtlasStepper.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,11 @@

#include <cmath>

// This is based original stepper code from the ATLAS RungeKuttaPropagator
namespace Acts {

/// @brief the AtlasStepper implementation for the
///
/// This is based original stepper code from the ATLAS RungeKuttaPropagator
class AtlasStepper {
public:
using Jacobian = BoundMatrix;
Expand Down Expand Up @@ -78,7 +79,7 @@ class AtlasStepper {
bool needgradient = false;
bool newfield = true;
// internal parameters to be used
Vector3 field;
Vector3 field = Vector3::Zero();
std::array<double, 60> pVector{};

/// Storage pattern of pVector
Expand Down Expand Up @@ -115,9 +116,6 @@ class AtlasStepper {
// Previous step size for overstep estimation
double previousStepSize = 0.;

/// The tolerance for the stepping
double tolerance = s_onSurfaceTolerance;

/// It caches the current magnetic field cell and stays (and interpolates)
/// within as long as this is valid. See step() code for details.
MagneticFieldProvider::Cache fieldCache;
Expand All @@ -143,11 +141,13 @@ class AtlasStepper {
const BoundTrackParameters& par) const {
State state{options, m_bField->makeCache(options.magFieldContext)};

state.particleHypothesis = par.particleHypothesis();

// The rest of this constructor is copy&paste of AtlasStepper::update() -
// this is a nasty but working solution for the stepper state without
// functions

const auto pos = par.position(state.options.geoContext);
const auto pos = par.position(options.geoContext);
const auto Vp = par.parameters();

double Sf = std::sin(Vp[eBoundPhi]);
Expand Down Expand Up @@ -179,7 +179,7 @@ class AtlasStepper {
state.covTransport = true;
state.useJacobian = true;
const auto transform = par.referenceSurface().referenceFrame(
state.options.geoContext, pos, par.direction());
options.geoContext, pos, par.direction());

pVector[8] = transform(0, eBoundLoc0);
pVector[16] = transform(0, eBoundLoc1);
Expand Down
Loading

0 comments on commit c0af7ca

Please sign in to comment.