Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
c258c79
update calibrator
osbornjd Jan 19, 2026
3b875db
call wrapper tgeo builder
osbornjd Jan 19, 2026
9646765
preserve makefile while testing
osbornjd Jan 19, 2026
e219ff4
use helper functions
osbornjd Jan 19, 2026
1f11a69
abolished measurement object
osbornjd Jan 19, 2026
707c3b1
update gsf apis
osbornjd Jan 19, 2026
bbdeda0
trackbase compiles
osbornjd Feb 23, 2026
6d1c301
Merge branch 'master' of github.com:sPHENIX-Collaboration/coresoftwar…
osbornjd Feb 23, 2026
0c9988a
update alignment states
osbornjd Feb 24, 2026
b7c4989
fix acts propagator
osbornjd Feb 25, 2026
67f930d
fix geometry building API
osbornjd Feb 26, 2026
e6240d3
fix acts evaluator
osbornjd Feb 26, 2026
9ea65df
geometry builder compiles
osbornjd Feb 26, 2026
a419369
makesourcelinks compiles
osbornjd Feb 26, 2026
a1b48d8
gsf compiles
osbornjd Feb 26, 2026
8a4c141
fix include
osbornjd Feb 27, 2026
c547c80
add fwd decl
osbornjd Feb 27, 2026
d2e9a1c
add some updates for compilation
osbornjd Feb 27, 2026
3804288
go back to regular makefile
osbornjd Feb 27, 2026
567fda4
Return other lines from makefile to normal
osbornjd Feb 27, 2026
df117a7
add missing fstream include
osbornjd Mar 2, 2026
100fa26
Readd mag field options
osbornjd Mar 2, 2026
aabd8ae
fix field map reading
osbornjd Mar 2, 2026
fbfe26e
add in field options
osbornjd Mar 2, 2026
5e88868
add fwd decl
osbornjd Mar 3, 2026
3dedddb
Get kd seeder to compile locally
osbornjd Mar 3, 2026
603c32a
working through silicon seeding API changes
osbornjd Mar 4, 2026
a0f0087
finally get all templated changes sorted out
osbornjd Mar 4, 2026
c21d9d5
track fitters compile
osbornjd Mar 4, 2026
2df35fc
remove deprecated library names
osbornjd Mar 4, 2026
d303120
remove missing include
osbornjd Mar 4, 2026
3167d91
make single typename definition for new acts propagator options
osbornjd Mar 4, 2026
c4220c8
Merge branch 'master' of github.com:sPHENIX-Collaboration/coresoftwar…
osbornjd Mar 4, 2026
b2b2ba9
fix func signature
osbornjd Mar 4, 2026
97a7f52
Remove acts dependency which is unneccessary
osbornjd Mar 4, 2026
abfd54b
Merge branch 'master' of github.com:sPHENIX-Collaboration/coresoftwar…
osbornjd Mar 5, 2026
d91092f
remove finalize method
osbornjd Mar 5, 2026
e58e15f
Remove finalize
osbornjd Mar 6, 2026
f5a5135
Merge branch 'master' of github.com:sPHENIX-Collaboration/coresoftwar…
osbornjd Mar 10, 2026
108c24b
make sure detector does not leave scope
osbornjd Apr 10, 2026
a1aae44
clean up
osbornjd Apr 10, 2026
bd1e06b
remove deadweight
osbornjd Apr 10, 2026
f0a6e98
Merge branch 'master' of github.com:sPHENIX-Collaboration/coresoftwar…
osbornjd Apr 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions calibrations/tpc/TpcDVCalib/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,6 @@ libTpcDVCalib_la_LDFLAGS = \
-L$(OFFLINE_MAIN)/lib

libTpcDVCalib_la_LIBADD = \
-lActsCore \
-lActsPluginTGeo \
-lActsExamplesDetectorTGeo \
-lActsExamplesFramework \
-lSubsysReco \
-ltrackbase_historic_io \
-ltrack_io \
Expand Down
9 changes: 1 addition & 8 deletions calibrations/tpc/TpcDVCalib/TrackToCalo.cc
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,7 @@
#include <trackbase_historic/TrackSeedContainer.h>
#include <trackbase_historic/TrackSeed.h>
#include <trackbase_historic/TrackAnalysisUtils.h>
#include <trackreco/ActsPropagator.h>

#include <Acts/Geometry/GeometryIdentifier.hpp>
#include <Acts/MagneticField/ConstantBField.hpp>
#include <Acts/MagneticField/MagneticFieldProvider.hpp>
#include <Acts/Surfaces/CylinderSurface.hpp>
#include <Acts/Surfaces/PerigeeSurface.hpp>
#include <Acts/Geometry/TrackingGeometry.hpp>


#include <CLHEP/Vector/ThreeVector.h>
#include <cmath>
Expand Down
6 changes: 3 additions & 3 deletions offline/packages/TrackerMillepedeAlignment/MakeMilleFiles.cc
Original file line number Diff line number Diff line change
Expand Up @@ -309,9 +309,9 @@ bool MakeMilleFiles::getLocalVtxDerivativesXY(SvtxTrack* track,
auto param = propagator.makeTrackParams(firststate, track->get_charge(), surf).value();
auto perigee = propagator.makeVertexSurface(vertex);
auto actspropagator = propagator.makePropagator();

Acts::PropagatorOptions<> options(_tGeometry->geometry().getGeoContext(),
_tGeometry->geometry().magFieldContext);
ActsPropagator::SphenixPropagatorOptions
options(_tGeometry->geometry().getGeoContext(),
_tGeometry->geometry().magFieldContext);

auto result = actspropagator.propagate(param, *perigee, options);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

#include <ActsExamples/EventData/Trajectories.hpp>

#include <fstream>
#include <string>
#include <vector>

Expand Down
26 changes: 14 additions & 12 deletions offline/packages/trackbase/ActsGsfTrackFittingAlgorithm.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ namespace
MixtureReductionAlgorithm::KLDistance;
Acts::ComponentMergeMethod mergeMethod =
Acts::ComponentMergeMethod::eMaxWeight;

double reverseFilteringCovarianceScaling = 100.;
ActsSourceLink::SurfaceAccessor m_slSurfaceAccessor;

GsfFitterFunctionImpl(Fitter&& f,
Expand All @@ -83,17 +83,18 @@ namespace
extensions.updater.connect<&Acts::GainMatrixUpdater::operator()<Acts::VectorMultiTrajectory>>(&updater);

Acts::GsfOptions<Acts::VectorMultiTrajectory> gsfOptions{
options.geoContext,
options.magFieldContext,
options.calibrationContext,
extensions,
options.propOptions,
&(*options.referenceSurface),
maxComponents,
weightCutoff,
abortOnError,
disableAllMaterialHandling};
options.geoContext, options.magFieldContext,
options.calibrationContext};
gsfOptions.extensions = extensions;
gsfOptions.propagatorPlainOptions = options.propOptions;
gsfOptions.referenceSurface = options.referenceSurface;
gsfOptions.maxComponents = maxComponents;
gsfOptions.weightCutoff = weightCutoff;
gsfOptions.abortOnError = abortOnError;
gsfOptions.disableAllMaterialHandling = disableAllMaterialHandling;
gsfOptions.componentMergeMethod = mergeMethod;
gsfOptions.reverseFilteringCovarianceScaling =
reverseFilteringCovarianceScaling;
gsfOptions.extensions.calibrator.connect<&calibrator_t::calibrate>(
&calibrator);
gsfOptions.extensions.surfaceAccessor.connect<&ActsSourceLink::SurfaceAccessor::operator()>(&m_slSurfaceAccessor);
Expand Down Expand Up @@ -152,5 +153,6 @@ class ActsGsfTrackFittingAlgorithm
BetheHeitlerApprox betheHeitlerApprox, std::size_t maxComponents,
double weightCutoff,
MixtureReductionAlgorithm finalReductionMethod, bool abortOnError,
bool disableAllMaterialHandling, const Acts::Logger& logger = *Acts::getDefaultLogger("GSF", Acts::Logging::FATAL));
bool disableAllMaterialHandling, double reverseFilteringCovarianceScaling,
const Acts::Logger& logger = *Acts::getDefaultLogger("GSF", Acts::Logging::FATAL));
};
5 changes: 2 additions & 3 deletions offline/packages/trackbase/ActsTrackFittingAlgorithm.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#include <Acts/EventData/TrackParameters.hpp>
#include <Acts/EventData/VectorTrackContainer.hpp>
#include <Acts/Geometry/TrackingGeometry.hpp>

#include <ActsExamples/EventData/Measurement.hpp>
#pragma GCC diagnostic push // needed for local Act compilation
#pragma GCC diagnostic ignored "-Wunused-local-typedefs"
#include <Acts/Propagator/MultiEigenStepperLoop.hpp>
Expand All @@ -32,8 +32,7 @@ class ActsTrackFittingAlgorithm final
{
public:
using TrackParameters = ::Acts::BoundTrackParameters;
using Measurement = ::Acts::BoundVariantMeasurement;
using MeasurementContainer = std::vector<Measurement>;
using MeasurementContainer = ActsExamples::MeasurementContainer;

using TrackContainer =
Acts::TrackContainer<Acts::VectorTrackContainer,
Expand Down
2 changes: 1 addition & 1 deletion offline/packages/trackbase/AlignmentTransformation.cc
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@ Acts::Transform3 AlignmentTransformation::newMakeTransform(const Surface& surf,

// get the acts transform components
// Note that Acts transforms local coordinates of (x,z,y) to global (x,y,z)
Acts::Transform3 actsTransform = surf->transform(m_tGeometry->geometry().getGeoContext());
auto actsTransform = surf->transform(m_tGeometry->geometry().getGeoContext());
Eigen::Matrix3d actsRotationPart = actsTransform.rotation();
Eigen::Vector3d actsTranslationPart = actsTransform.translation();

Expand Down
61 changes: 26 additions & 35 deletions offline/packages/trackbase/Calibrator.cc
Original file line number Diff line number Diff line change
Expand Up @@ -6,43 +6,34 @@ void Calibrator::calibrate(const Calibrator::MeasurementContainer& measurements,
const Acts::SourceLink& sourceLink,
Acts::VectorMultiTrajectory::TrackStateProxy& trackState) const
{
trackState.setUncalibratedSourceLink(sourceLink);
trackState.setUncalibratedSourceLink(Acts::SourceLink{sourceLink});
const ActsSourceLink sl = sourceLink.get<ActsSourceLink>();
const ActsSourceLink::Index index = sl.index();
std::visit(
[&](const auto& uncalibmeas)
const ActsExamples::ConstVariableBoundMeasurementProxy measurement =
measurements.getMeasurement(sl.index());

Acts::visit_measurement(measurement.size(), [&](auto N) -> void
{
constexpr std::size_t kMeasurementSize = decltype(N)::value;
const ActsExamples::ConstFixedBoundMeasurementProxy<kMeasurementSize> fixedMeasurement =
static_cast<ActsExamples::ConstFixedBoundMeasurementProxy<kMeasurementSize>>(
measurement);
const auto cov = fixedMeasurement.covariance();
const TrkrDefs::cluskey cluskey = sl.cluskey();
const uint8_t layer = TrkrDefs::getLayer(cluskey);
const double misalignmentFactor = gctx.get<alignmentTransformationContainer*>()->getMisalignmentFactor(layer);

Acts::ActsSquareMatrix<kMeasurementSize> expandedCov = Acts::ActsSquareMatrix<kMeasurementSize>::Zero();

for (int i = 0; i < cov.rows(); i++)
{
for (int j = 0; j < cov.cols(); j++)
{
std::array<Acts::BoundIndices, 2> indices{};
indices[0] = Acts::BoundIndices::eBoundLoc0;
indices[1] = Acts::BoundIndices::eBoundLoc1;

Acts::ActsVector<2> loc;
loc(0) = uncalibmeas.parameters()[Acts::eBoundLoc0];
loc(1) = uncalibmeas.parameters()[Acts::eBoundLoc1];

auto cov = uncalibmeas.covariance();
const TrkrDefs::cluskey cluskey = sl.cluskey();
const uint8_t layer = TrkrDefs::getLayer(cluskey);
const double misalignmentFactor = gctx.get<alignmentTransformationContainer*>()->getMisalignmentFactor(layer);

Acts::ActsSquareMatrix<2> expandedCov = Acts::ActsSquareMatrix<2>::Zero();

for (int i = 0; i < cov.rows(); i++)
{
for (int j = 0; j < cov.cols(); j++)
{
expandedCov(i, j) = cov(i, j) * misalignmentFactor;
}
}

Acts::Measurement<Acts::BoundIndices, 2> meas(sourceLink,
indices,
loc, expandedCov);

trackState.allocateCalibrated(meas.size());
trackState.setCalibrated(meas);
},
(measurements)[index]);
expandedCov(i, j) = cov(i, j) * misalignmentFactor;
}
}
trackState.allocateCalibrated(fixedMeasurement.parameters().eval(),
expandedCov.eval());
trackState.setProjectorSubspaceIndices(fixedMeasurement.subspaceIndices()); });
}

void CalibratorAdapter::calibrate(
Expand Down
10 changes: 2 additions & 8 deletions offline/packages/trackbase/Calibrator.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,15 @@
#include "TrkrDefs.h"
#include "alignmentTransformationContainer.h"

#include <Acts/EventData/Measurement.hpp>
#include <ActsExamples/EventData/Measurement.hpp>
#include <Acts/EventData/MultiTrajectory.hpp>
#include <Acts/EventData/VectorMultiTrajectory.hpp>


class Calibrator
{
public:
using Measurement = ::Acts::BoundVariantMeasurement;
/// Container of measurements.
///
/// In contrast to the source links, the measurements themself must not be
/// orderable. The source links stored in the measurements are treated
/// as opaque here and no ordering is enforced on the stored measurements.
using MeasurementContainer = std::vector<Measurement>;
using MeasurementContainer = ActsExamples::MeasurementContainer;

void calibrate(const MeasurementContainer& measurements,
const Acts::GeometryContext& gctx,
Expand Down
17 changes: 11 additions & 6 deletions offline/packages/trackbase/IBaseDetector.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,20 @@

#pragma once

#include "ActsExamples/Utilities/OptionsFwd.hpp"

#include <memory>
#include <utility>
#include <vector>

namespace boost::program_options
{
class options_description;
class variables_map;
} // namespace boost::program_options

namespace ActsExamples::Options
{
using Description = ::boost::program_options::options_description;
using Variables = ::boost::program_options::variables_map;
} // namespace ActsExamples::Options
namespace Acts {
class TrackingGeometry;
class IMaterialDecorator;
Expand All @@ -34,8 +42,5 @@ class IBaseDetector {
virtual void addOptions(
boost::program_options::options_description& opt) const = 0;

virtual std::pair<TrackingGeometryPtr, ContextDecorators> finalize(
const boost::program_options::variables_map& vm,
std::shared_ptr<const Acts::IMaterialDecorator> mdecorator) = 0;
};
} // namespace ActsExamples
12 changes: 6 additions & 6 deletions offline/packages/trackbase/MagneticFieldOptions.cc
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
#include <Acts/MagneticField/MagneticFieldProvider.hpp>
#include <Acts/MagneticField/SolenoidBField.hpp>
#include <Acts/Utilities/Logger.hpp>
#include <ActsExamples/MagneticField/FieldMapRootIo.hpp>
#include <ActsExamples/MagneticField/FieldMapTextIo.hpp>
#include <Acts/MagneticField/TextMagneticFieldIo.hpp>
#include <ActsPlugins/Root/RootMagneticFieldIo.hpp>
#include <ActsExamples/MagneticField/ScalableBFieldService.hpp>
#include <ActsExamples/Utilities/Options.hpp>

Expand Down Expand Up @@ -129,13 +129,13 @@ ActsExamples::Options::readMagneticField(const Variables& vars) {
};

if (readRoot) {
auto map = makeMagneticFieldMapXyzFromRoot(
auto map = ActsPlugins::makeMagneticFieldMapXyzFromRoot(
std::move(mapBins), file.native(), tree, lengthUnit, fieldUnit,
useOctantOnly);
return std::make_shared<InterpolatedMagneticField3>(std::move(map));

} else {
auto map = makeMagneticFieldMapXyzFromText(std::move(mapBins),
auto map = Acts::makeMagneticFieldMapXyzFromText(std::move(mapBins),
file.native(), lengthUnit,
fieldUnit, useOctantOnly);
return std::make_shared<InterpolatedMagneticField3>(std::move(map));
Expand All @@ -148,13 +148,13 @@ ActsExamples::Options::readMagneticField(const Variables& vars) {
};

if (readRoot) {
auto map = makeMagneticFieldMapRzFromRoot(
auto map = ActsPlugins::makeMagneticFieldMapRzFromRoot(
std::move(mapBins), file.native(), tree, lengthUnit, fieldUnit,
useOctantOnly);
return std::make_shared<InterpolatedMagneticField2>(std::move(map));

} else {
auto map = makeMagneticFieldMapRzFromText(std::move(mapBins),
auto map = Acts::makeMagneticFieldMapRzFromText(std::move(mapBins),
file.native(), lengthUnit,
fieldUnit, useOctantOnly);
return std::make_shared<InterpolatedMagneticField2>(std::move(map));
Expand Down
15 changes: 13 additions & 2 deletions offline/packages/trackbase/MagneticFieldOptions.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,18 @@

#include <Acts/MagneticField/MagneticFieldProvider.hpp>
#include <ActsExamples/MagneticField/MagneticField.hpp>
#include <ActsExamples/Utilities/OptionsFwd.hpp>

namespace boost::program_options
{
class options_description;
class variables_map;
} // namespace boost::program_options

namespace ActsExamples::Options
{
using Description = ::boost::program_options::options_description;
using Variables = ::boost::program_options::variables_map;
} // namespace ActsExamples::Options

namespace ActsExamples {

Expand All @@ -19,4 +30,4 @@ std::shared_ptr<Acts::MagneticFieldProvider> readMagneticField(
} // namespace Options
} // namespace ActsExamples

#endif // _MAGNETICFIELDOPTIONS_H
#endif // _MAGNETICFIELDOPTIONS_H
5 changes: 2 additions & 3 deletions offline/packages/trackbase/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,8 @@ pkginclude_HEADERS = \
LaserClusterContainerv1.h \
LaserClusterv1.h \
LaserClusterv2.h \
MagneticFieldOptions.h \
MaterialWiper.h \
MagneticFieldOptions.h \
MvtxDefs.h \
MvtxEventInfo.h \
MvtxEventInfov1.h \
Expand Down Expand Up @@ -292,8 +292,7 @@ libtrack_io_la_SOURCES = \
libtrack_la_LIBADD = \
libtrack_io.la \
-lActsCore \
-lActsExamplesMagneticField \
-lActsPluginTGeo \
-lActsPluginRoot \
-lActsExamplesDetectorTGeo \
-lffamodules \
-lboost_program_options
Expand Down
Loading