Go Back to: C++ Manual General Site

LDMX.Tracking package

Submodules

LDMX.Tracking.alignment module

class LDMX.Tracking.alignment.AlignmentTestProcessor(instance_name: str = 'AlignmentTestProcessor', histograms: list[Histogram] = <factory>)

Bases: Processor

Producer to test Alignment constants loading and propagation to devices.

class_name: str = 'tracking::reco::AlignmentTestProcessor'
instance_name: str = 'AlignmentTestProcessor'
module_name: str = 'Tracking'

LDMX.Tracking.dqm module

class LDMX.Tracking.dqm.DigiDQM(instance_name: str = 'DigiDQM', histograms: list[Histogram] = <factory>, n_sensors: int = 14, sim_coll_name: str = 'TaggerSimHits', sim_pass_name: str = '', digi_coll_name: str = '', digi_pass_name: str = '', fitted_coll_name: str = 'TaggerFittedSiStripHits', fitted_pass_name: str = '', cluster_coll_name: str = 'TaggerClusterMeasurements', cluster_pass_name: str = '')

Bases: Processor

DQM for silicon-strip digitization and clustering.

Produces per-sensor histograms for sim hits, fitted strips, and clusters.

class_name: str = 'tracking::dqm::DigiDQM'
cluster_coll_name: str = 'TaggerClusterMeasurements'
cluster_pass_name: str = ''
digi_coll_name: str = ''
digi_pass_name: str = ''
fitted_coll_name: str = 'TaggerFittedSiStripHits'
fitted_pass_name: str = ''
instance_name: str = 'DigiDQM'
module_name: str = 'Tracking'
n_sensors: int = 14
sim_coll_name: str = 'TaggerSimHits'
sim_pass_name: str = ''
class LDMX.Tracking.dqm.StraightTracksDQM(instance_name: str = 'StraightTracksDQM', histograms: list[Histogram] = <factory>, nbins: int = 100, phimin: float = -0.2, phimax: float = 0.2, thetamin: float = -0.3, thetamax: float = 0.3, do_truth: bool = True, track_collection: str = 'LinearRecoilTracks', truth_collection: str = 'LinearRecoilTruthTracks', title: str = 'recoil_lin_trk_', subdetector: str = 'Recoil', measurement_collection: str = 'DigiRecoilSimHits', track_collection_events_passname: str = '', truth_collection_events_passname: str = '', input_pass_name: str = '')

Bases: Processor

DQM analyzer for straight tracks.

nbins

Number of bins for histograms.

Type:

int

phimin

Minimum phi for histograms.

Type:

float

phimax

Maximum phi for histograms.

Type:

float

thetamin

Minimum theta for histograms.

Type:

float

thetamax

Maximum theta for histograms.

Type:

float

do_truth

Whether to build truth histograms.

Type:

bool

track_collection

Name of the track collection.

Type:

str

truth_collection

Name of the truth collection.

Type:

str

title

Title prefix for histograms.

Type:

str

subdetector

Name of the subdetector.

Type:

str

measurement_collection

Name of the measurement collection.

Type:

str

track_collection_events_passname

The events pass name for track collection.

Type:

str

truth_collection_events_passname

The events pass name for truth collection.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

class_name: str = 'tracking::dqm::StraightTracksDQM'
do_truth: bool = True
input_pass_name: str = ''
instance_name: str = 'StraightTracksDQM'
measurement_collection: str = 'DigiRecoilSimHits'
module_name: str = 'Tracking'
nbins: int = 100
phimax: float = 0.2
phimin: float = -0.2
subdetector: str = 'Recoil'
thetamax: float = 0.3
thetamin: float = -0.3
title: str = 'recoil_lin_trk_'
track_collection: str = 'LinearRecoilTracks'
track_collection_events_passname: str = ''
truth_collection: str = 'LinearRecoilTruthTracks'
truth_collection_events_passname: str = ''
class LDMX.Tracking.dqm.TrackerDigiDQM(instance_name: str = 'TrackerDigiDQM', histograms: list[Histogram] = <factory>, output_measurements_passname: str = '', measurements_passname: str = '')

Bases: Processor

DQM analyzer for tracker digitization.

output_measurements_passname

The pass name of the output measurements.

Type:

str

measurements_passname

The pass name of the measurements.

Type:

str

class_name: str = 'tracking::dqm::TrackerDigiDQM'
instance_name: str = 'TrackerDigiDQM'
measurements_passname: str = ''
module_name: str = 'Tracking'
output_measurements_passname: str = ''
class LDMX.Tracking.dqm.TrackingRecoDQM(instance_name: str = 'TrackingRecoDQM', histograms: list[Histogram] = <factory>, nbins: int = 1000, d0min: float = -50.0, d0max: float = 50.0, z0min: float = -200.0, z0max: float = 200.0, phimin: float = -0.1, phimax: float = 0.1, thetamin: float = 1.4, thetamax: float = 1.7, qopmin: float = -10.0, qopmax: float = 10.0, pmax: float = 10.0, track_states: list[str] = <factory>, do_truth: bool = True, track_collection: str = 'TruthTracks', truth_collection: str = 'TaggerTruthTracks', truth_hit_collection: str = '', measurement_collection: str = 'DigiTaggerSimHits', measurement_passname: str = '', title: str = '', ecal_sp_coll_name: str = 'EcalScoringPlaneHits', ecal_sp_passname: str = '', target_sp_coll_name: str = 'TargetScoringPlaneHits', target_sp_passname: str = '', truth_events_passname: str = '', truth_passname: str = '', track_collection_events_passname: str = '', track_passname: str = '')

Bases: Processor

DQM analyzer for tracking reconstruction.

nbins

Number of bins for histograms.

Type:

int

d0min

Minimum d0 for histograms.

Type:

float

d0max

Maximum d0 for histograms.

Type:

float

z0min

Minimum z0 for histograms.

Type:

float

z0max

Maximum z0 for histograms.

Type:

float

phimin

Minimum phi for histograms.

Type:

float

phimax

Maximum phi for histograms.

Type:

float

thetamin

Minimum theta for histograms.

Type:

float

thetamax

Maximum theta for histograms.

Type:

float

qopmin

Minimum q/p for histograms.

Type:

float

qopmax

Maximum q/p for histograms.

Type:

float

pmax

Maximum momentum for histograms.

Type:

float

track_states

Track states to build histograms for.

Type:

list[str]

do_truth

Whether to build truth histograms.

Type:

bool

track_collection

Name of the track collection.

Type:

str

truth_collection

Name of the truth collection.

Type:

str

measurement_collection

Name of the measurement collection.

Type:

str

measurement_passname

The pass name of the measurements.

Type:

str

ecal_sp_coll_name

The events pass name for ecal scoring plane.

Type:

str

ecal_sp_passname

The pass name for ecal scoring plane.

Type:

str

target_sp_coll_name

The events pass name for target scoring plane.

Type:

str

target_sp_passname

The pass name for target scoring plane.

Type:

str

truth_events_passname

The events pass name for truth.

Type:

str

truth_passname

The pass name for truth.

Type:

str

track_collection_events_passname

The events pass name for track collection.

Type:

str

track_passname

The pass name for tracks.

Type:

str

class_name: str = 'tracking::dqm::TrackingRecoDQM'
d0max: float = 50.0
d0min: float = -50.0
do_truth: bool = True
ecal_sp_coll_name: str = 'EcalScoringPlaneHits'
ecal_sp_passname: str = ''
instance_name: str = 'TrackingRecoDQM'
measurement_collection: str = 'DigiTaggerSimHits'
measurement_passname: str = ''
module_name: str = 'Tracking'
nbins: int = 1000
phimax: float = 0.1
phimin: float = -0.1
pmax: float = 10.0
qopmax: float = 10.0
qopmin: float = -10.0
target_sp_coll_name: str = 'TargetScoringPlaneHits'
target_sp_passname: str = ''
thetamax: float = 1.7
thetamin: float = 1.4
title: str = ''
track_collection: str = 'TruthTracks'
track_collection_events_passname: str = ''
track_passname: str = ''
track_states: list[str]
truth_collection: str = 'TaggerTruthTracks'
truth_events_passname: str = ''
truth_hit_collection: str = ''
truth_passname: str = ''
z0max: float = 200.0
z0min: float = -200.0

LDMX.Tracking.full_tracking_sequence module

class LDMX.Tracking.full_tracking_sequence.TrackingSequence(sequence, dqm_sequence, **processors)

Bases: object

Return value of full_tracking_sequence() and related functions.

sequence

Processor sequence (digi + seeds + CKF + ambiguity + GSF [+ veto]).

Type:

list

dqm_sequence

DQM processor sequence.

Type:

list

Individual processors are also accessible as attributes, e.g.
``trk.digi_recoil``, ``trk.seeder_tagger``, ``trk.GSF_recoil``.
Charge-digitization processors (``fit_tagger``, ``cluster_recoil``, etc.)
are only present when ``use_truth_smearing=False``.
set_overlay(pass_name: str)

Modify sequence and dqm_sequence in-place for overlay collections.

LDMX.Tracking.full_tracking_sequence.full_tracking_sequence(use_truth_smearing=True, detector='ldmx-det-v15-8gev', tag='')

Build and return the full LDMX tracking processor sequence.

Parameters:
  • use_truth_smearing (bool) – If True (default), use simple Gaussian smearing (Mode 0). If False, use full charge digitization (Mode 1).

  • detector (str) – Detector geometry tag.

  • tag (str) – Optional prefix applied to all processor instance names and output collection names. Use this when running two chains in the same job (e.g. a smear/digi comparison) to avoid name conflicts. Example: tag="Smear" turns "TaggerTracks" into "SmearTaggerTracks".

Returns:

Object with .sequence, .dqm_sequence, .set_overlay(), and individual processor attributes (e.g. .digi_recoil, .seeder_tagger, .GSF_recoil).

Return type:

TrackingSequence

LDMX.Tracking.full_tracking_sequence.recoil_sequence(use_truth_smearing=True, detector='ldmx-det-v15-8gev', tag='')

Build and return a recoil-only tracking sequence.

Includes digi, truth seeding, seed finding, CKF, ambiguity solver, and GSF for the recoil tracker only. The tracker veto is omitted (it requires a tagger track). Useful for studies and configs where tagger reconstruction is not needed.

Parameters:
  • use_truth_smearing (bool) – If True (default), use simple Gaussian smearing. If False, use full charge digitization.

  • detector (str) – Detector geometry tag.

  • tag (str) – Optional prefix for instance and collection names (see full_tracking_sequence).

Return type:

TrackingSequence

LDMX.Tracking.full_tracking_sequence.tagger_sequence(use_truth_smearing=True, detector='ldmx-det-v15-8gev', tag='')

Build and return a tagger-only tracking sequence.

Includes digi, truth seeding, seed finding, CKF, ambiguity solver, and GSF for the tagger tracker only. Useful for studies and configs where recoil reconstruction is not needed.

Parameters:
  • use_truth_smearing (bool) – If True (default), use simple Gaussian smearing. If False, use full charge digitization.

  • detector (str) – Detector geometry tag.

  • tag (str) – Optional prefix for instance and collection names (see full_tracking_sequence).

Return type:

TrackingSequence

LDMX.Tracking.geo module

class LDMX.Tracking.geo.CalibrationContextProvider(tag_name: str = '')

Bases: ConditionsObjectProvider

Provider of the calibration context condition.

class_name: str = 'tracking::geo::CalibrationContextProvider'
module_name: str = 'Tracking'
object_name: str = 'CalibrationContext'
tag_name: str = ''
class LDMX.Tracking.geo.GeometryContextProvider(tag_name: str = '')

Bases: ConditionsObjectProvider

Provider of the geometry context condition.

class_name: str = 'tracking::geo::GeometryContextProvider'
module_name: str = 'Tracking'
object_name: str = 'GeometryContext'
tag_name: str = ''
class LDMX.Tracking.geo.MagneticFieldContextProvider(tag_name: str = '')

Bases: ConditionsObjectProvider

Provider of the magnetic field context condition.

class_name: str = 'tracking::geo::MagneticFieldContextProvider'
module_name: str = 'Tracking'
object_name: str = 'MagneticFieldContext'
tag_name: str = ''
class LDMX.Tracking.geo.TrackersTrackingGeometryProvider(detector: str = '', tracker_y_length: float = 480.0, tracker_z_length: float = 240.0, tag_name: str = '')

Bases: ConditionsObjectProvider

The provider of the tracking geometry

This is a singleton-class and is created when this module is imported. Users can then modify its configuration by setting attributes and calling methods after calling get_instance(). For example, if you wanted to change the detector to v12 since that is what you used during the simulation, you would

from LDMX.Tracking.geo import TrackersTrackingGeometryProvider as trackgeo trackgeo.get_instance().set_detector(‘ldmx-det-v12’)

The default detector is ‘ldmx-det-v15-8gev’.

class_name: str = 'tracking::geo::TrackersTrackingGeometryProvider'
detector: str = ''
get_instance()
module_name: str = 'Tracking'
object_name: str = 'TrackersTrackingGeometry'
set_detector(det_name)

Set the detector GDML based on the detector name

Parameters:

det_name (str) – name of a detector in the Detectors module

See also

LDMX.Detectors.makePath

tag_name: str = ''
tracker_y_length: float = 480.0
tracker_z_length: float = 240.0

LDMX.Tracking.make_path module

Helpful python configuration functions for getting the path to installed data files.

This assumes the installation directory can be accessed via the cmake variable CMAKE_INSTALL_PREFIX.

LDMX.Tracking.make_path.make_detector_path(det_name: str) str

Get the full path to the detector description.

This will generate a path to detector.gdml, the main entry point for the detector description, for a given detector name.

Parameters:

det_name (str) – The name of the detector e.g. ldmx-det-v14

Returns:

Full path to the detector.gdml of the given detector.

Return type:

str

LDMX.Tracking.make_path.make_field_map_path() str

Get the full path to the fieldmap.

If the fieldmap doesn’t exist, exit the app.

Returns:

Full path to the installed fieldmap.

Return type:

str

LDMX.Tracking.propagation module

class LDMX.Tracking.propagation.CustomStatePropagator(instance_name: str = 'CustomStatePropagator', histograms: list[Histogram] = <factory>, nstates: int = 1000, bs_size: list[float] = <factory>, prange: list[float] = <factory>, thetarange: list[float] = <factory>, phirange: list[float] = <factory>)

Bases: Processor

Producer to generate an user defined set of particles at the target and propagate them through the BField map to an user defined plane surface. Only forward propagation is supported.

nstates

Number of states to be propagated

Type:

int

bs_size

The size of the generated beamspot in Y-X [mm]

Type:

list[float]

prange

Minimum and maximum momentum magnitude uniform pdf [GeV]

Type:

list[float]

thetarange

Minimum and maximum theta angle uniform pdf

Type:

list[float]

phirange

Minimum and maximum phi angle uniform pdf

Type:

list[float]

bs_size: list[float]
class_name: str = 'tracking::reco::CustomStatePropagator'
instance_name: str = 'CustomStatePropagator'
module_name: str = 'Tracking'
nstates: int = 1000
phirange: list[float]
prange: list[float]
thetarange: list[float]

LDMX.Tracking.reduced_tracking module

class LDMX.Tracking.reduced_tracking.LinearSeedFinder(instance_name: str = 'LinearSeedFinder', histograms: list[Histogram] = <factory>, input_hits_collection: str = 'DigiRecoilSimHits', input_rec_hits_collection: str = 'EcalRecHits', out_seed_collection: str = 'LinearRecoilSeedTracks', recoil_uncertainty: list[float] = <factory>, ecal_uncertainty: float = 3.87, ecal_first_layer_z_threshold: float = 250.0, ecal_distance_threshold: float = 15.0, layer12_midpoint: float = 12.5, layer23_midpoint: float = 20.0, layer34_midpoint: float = 27.5, input_pass_name: str = '', sim_particles_passname: str = '', sim_particles_events_passname: str = '')

Bases: Processor

Producer to find Seeds for the reduced geometry track finding.

input_hits_collection

The name of the input collection of hits to be used for seed finding.

Type:

str

input_rec_hits_collection

The name of the input collection of Ecal RecHits (from layer 1) to give a degree of freedom to seed finding.

Type:

str

out_seed_collection

The name of the output collection of seeds to be stored.

Type:

str

recoil_uncertainty

The position uncertainty in [x, y] of a recoil tracker double-layer from combining an axial-stereo sensor pair to make one 3D position.

Type:

list[float]

ecal_uncertainty

The radius of an ECal hexagonal cell.

Type:

float

ecal_first_layer_z_threshold

The z threshold for the first ECal layer.

Type:

float

ecal_distance_threshold

The maximum distance on the Ecal First Layer at which we still allow a seed to be saved.

Type:

float

layer12_midpoint

The z coordinate of the midpoint between Recoil layers 1 and 2.

Type:

float

layer23_midpoint

The z coordinate of the midpoint between Recoil layers 2 and 3.

Type:

float

layer34_midpoint

The z coordinate of the midpoint between Recoil layers 3 and 4.

Type:

float

input_pass_name

The pass name of the input collections.

Type:

str

sim_particles_passname

The pass name of the sim particles.

Type:

str

sim_particles_events_passname

The events pass name of the sim particles.

Type:

str

class_name: str = 'tracking::reco::LinearSeedFinder'
ecal_distance_threshold: float = 15.0
ecal_first_layer_z_threshold: float = 250.0
ecal_uncertainty: float = 3.87
input_hits_collection: str = 'DigiRecoilSimHits'
input_pass_name: str = ''
input_rec_hits_collection: str = 'EcalRecHits'
instance_name: str = 'LinearSeedFinder'
layer12_midpoint: float = 12.5
layer23_midpoint: float = 20.0
layer34_midpoint: float = 27.5
module_name: str = 'Tracking'
out_seed_collection: str = 'LinearRecoilSeedTracks'
recoil_uncertainty: list[float]
sim_particles_events_passname: str = ''
sim_particles_passname: str = ''
class LDMX.Tracking.reduced_tracking.LinearTrackFinder(instance_name: str = 'LinearTrackFinder', histograms: list[Histogram] = <factory>, seed_collection_: str = 'LinearRecoilSeedTracks', out_trk_collection: str = 'LinearRecoilTracks', input_pass_name: str = '')

Bases: Processor

Producer to find tracks for the reduced geometry track finding.

seed_collection_

The name of the input collection of seeds to be used for track finding.

Type:

str

out_trk_collection

The name of the output collection of tracks to be stored.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

class_name: str = 'tracking::reco::LinearTrackFinder'
input_pass_name: str = ''
instance_name: str = 'LinearTrackFinder'
module_name: str = 'Tracking'
out_trk_collection: str = 'LinearRecoilTracks'
seed_collection_: str = 'LinearRecoilSeedTracks'
class LDMX.Tracking.reduced_tracking.LinearTruthTracking(instance_name: str = 'LinearTruthTracking', histograms: list[Histogram] = <factory>, input_hits_collection: str = 'RecoilSimHits', input_rec_hits_collection: str = 'EcalRecHits', out_track_collection: str = 'LinearRecoilTruthTracks', ecal_first_layer_z_threshold: float = 250.0, input_pass_name: str = '')

Bases: Processor

Producer to find (truth) tracks using trackID=1 for the reduced geometry.

input_hits_collection

The name of the input collection of hits to be used for truth tracking.

Type:

str

input_rec_hits_collection

The name of the input collection of Ecal RecHits (from layer 1) to check track quality.

Type:

str

out_track_collection

The name of the output collection of truth tracks to be stored.

Type:

str

ecal_first_layer_z_threshold

The z threshold for the first ECal layer.

Type:

float

input_pass_name

The pass name of the input collections.

Type:

str

class_name: str = 'tracking::reco::LinearTruthTracking'
ecal_first_layer_z_threshold: float = 250.0
input_hits_collection: str = 'RecoilSimHits'
input_pass_name: str = ''
input_rec_hits_collection: str = 'EcalRecHits'
instance_name: str = 'LinearTruthTracking'
module_name: str = 'Tracking'
out_track_collection: str = 'LinearRecoilTruthTracks'

LDMX.Tracking.tracking module

class LDMX.Tracking.tracking.CKFProcessor(instance_name: str = 'CKFProcessor', histograms: list[Histogram] = <factory>, dumpobj: bool = False, debug_acts: bool = False, pionstates: int = 0, bfield: float = -1.5, const_b_field: bool = False, field_map: str = '', propagator_step_size: float = 1000.0, propagator_max_steps: int = 10000, hit_collection: str = 'RecoilSimHits', remove_stereo: bool = False, use_extrapolate_location: bool = True, extrapolate_location: list[float] = <factory>, use_seed_perigee: bool = False, seed_coll_name: str = 'SeedTracks', out_trk_collection: str = 'Tracks', min_hits: int = 5, tagger_tracking: bool = False, measurement_collection: str = '', outlier_pval_: float = 3.84, sim_particles_coll_name: str = 'SimParticles', sim_particles_event_passname: str = '', input_pass_name: str = '')

Bases: Processor

Producer that runs the Combinatorial Kalman Filter for track finding and fitting.

dumpobj

If true, dump the tracking geometry into obj/mtl files for visualization purposes.

Type:

bool

debug_acts

Enable ACTS debug output.

Type:

bool

pionstates

Number of pion states generated with uniform distributions to be propagated through the tracking geometry for debugging purposes.

Type:

int

bfield

If using a constant bfield, this is the BZ component.

Type:

float

const_b_field

Activate the usage of constant magnetic field.

Type:

bool

field_map

Path to the location of the magnetic field map.

Type:

str

propagator_step_size

Size of each RK propagator step.

Type:

float

propagator_max_steps

Maximum number of steps for the propagator.

Type:

int

hit_collection

The hit collection for pattern reconstruction.

Type:

str

remove_stereo

Remove stereo hits from track fitting.

Type:

bool

use_extrapolate_location

Activate the usage of extrapolate location for returning the track parameters.

Type:

bool

extrapolate_location

Location of the extrapolation for the trajectory (perigee representation).

Type:

list[float]

use_seed_perigee

Uses the seed perigee as extrapolation location.

Type:

bool

seed_coll_name

Seed collection for initiating the track finding.

Type:

str

out_trk_collection

Name of the output Track collection.

Type:

str

min_hits

Minimum number of measurements on track to accept the trajectory.

Type:

int

outlier_pval_

Outlier p-value threshold.

Type:

float

sim_particles_coll_name

The name of the sim particles collection.

Type:

str

sim_particles_event_passname

The pass name of the sim particles event.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

bfield: float = -1.5
class_name: str = 'tracking::reco::CKFProcessor'
const_b_field: bool = False
debug_acts: bool = False
dumpobj: bool = False
extrapolate_location: list[float]
field_map: str = ''
hit_collection: str = 'RecoilSimHits'
input_pass_name: str = ''
instance_name: str = 'CKFProcessor'
measurement_collection: str = ''
min_hits: int = 5
module_name: str = 'Tracking'
out_trk_collection: str = 'Tracks'
outlier_pval_: float = 3.84
pionstates: int = 0
propagator_max_steps: int = 10000
propagator_step_size: float = 1000.0
remove_stereo: bool = False
seed_coll_name: str = 'SeedTracks'
sim_particles_coll_name: str = 'SimParticles'
sim_particles_event_passname: str = ''
tagger_tracking: bool = False
use_extrapolate_location: bool = True
use_seed_perigee: bool = False
class LDMX.Tracking.tracking.DigitizationProcessor(instance_name: str = 'DigitizationProcessor', histograms: list[Histogram] = <factory>, merge_hits: bool = True, do_smearing: bool = True, sigma_u: float = 0.006, sigma_v: float = 1e-06, track_id: int = -1, min_e_dep: float = 0.05, hit_collection: str = 'TaggerSimHits', out_collection: str = 'OutputMeasurements', tracker_hit_passname: str = '', use_charge_digitization: bool = False, use_lorentz: bool = True, bias_voltage: float = 200.0, depletion_voltage: float = 70.0, noise_electrons: float = 1000.0, threshold_electrons: float = 3000.0, electron_lorentz_tangent: float = 0.0, hole_lorentz_tangent: float = 0.0, trapping: float = 0.0, deposition_granularity: float = 0.1, n_segments_min: int = 5, out_raw_collection: str = '')

Bases: Processor

Smears or fully digitizes simulated tracker hits.

Mode 0 (use_charge_digitization=False): Gaussian smear in U/V directly to Measurement objects.

Mode 1 (use_charge_digitization=True): Full silicon-strip charge simulation producing RawSiStripHit objects (and optionally Measurements), suitable for downstream StripFitProcessor + StripClusterProcessor.

merge_hits

Merge hits with the same track ID on the same layer.

Type:

bool

do_smearing

Activate Gaussian smearing (Mode 0 only).

Type:

bool

sigma_u

Smearing sigma in the precision direction [mm] (Mode 0 only).

Type:

float

sigma_v

Smearing sigma in the strip direction [mm] (Mode 0 only).

Type:

float

track_id

If > 0, retain only hits with this track ID.

Type:

int

min_e_dep

Minimum energy deposit [MeV] to process a hit.

Type:

float

hit_collection

Input SimTrackerHit collection name.

Type:

str

out_collection

Output Measurement collection name.

Type:

str

tracker_hit_passname

Pass name of the input hit collection.

Type:

str

use_charge_digitization

If True, run full charge simulation (Mode 1).

Type:

bool

bias_voltage

Sensor bias voltage [V] (Mode 1).

Type:

float

depletion_voltage

Sensor depletion voltage [V] (Mode 1).

Type:

float

noise_electrons

Equivalent noise charge [e-] (Mode 1).

Type:

float

threshold_electrons

Strip hit threshold [e-] (Mode 1).

Type:

float

electron_lorentz_tangent

tan(theta_L) for electrons (Mode 1).

Type:

float

hole_lorentz_tangent

tan(theta_L) for holes (Mode 1).

Type:

float

trapping

Charge trapping fraction per 100 um drift (Mode 1).

Type:

float

deposition_granularity

Step size for charge deposition segments [fraction of sense pitch] (Mode 1).

Type:

float

n_segments_min

Minimum number of charge deposition segments (Mode 1).

Type:

int

out_raw_collection

Output RawSiStripHit collection name; empty disables (Mode 1).

Type:

str

bias_voltage: float = 200.0
class_name: str = 'tracking::reco::DigitizationProcessor'
depletion_voltage: float = 70.0
deposition_granularity: float = 0.1
do_smearing: bool = True
electron_lorentz_tangent: float = 0.0
hit_collection: str = 'TaggerSimHits'
hole_lorentz_tangent: float = 0.0
instance_name: str = 'DigitizationProcessor'
merge_hits: bool = True
min_e_dep: float = 0.05
module_name: str = 'Tracking'
n_segments_min: int = 5
noise_electrons: float = 1000.0
out_collection: str = 'OutputMeasurements'
out_raw_collection: str = ''
sigma_u: float = 0.006
sigma_v: float = 1e-06
threshold_electrons: float = 3000.0
track_id: int = -1
tracker_hit_passname: str = ''
trapping: float = 0.0
use_charge_digitization: bool = False
use_lorentz: bool = True
class LDMX.Tracking.tracking.GSFProcessor(instance_name: str = 'GSFProcessor', histograms: list[Histogram] = <factory>, max_components: int = 12, abort_on_error: bool = False, disable_all_material_handling: bool = False, weight_cutoff: float = 0.0001, debug: bool = False, propagator_step_size: float = 200.0, propagator_max_steps: int = 1000, field_map: str = '', tagger_tracking: bool = True, out_trk_collection: str = 'GSFTracks', track_collection: str = 'TaggerTracks', meas_collection: str = 'DigiTaggerSimHits', track_passname: str = '', meas_passname: str = '', track_collection_event_passname: str = '', meas_collection_event_passname: str = '')

Bases: Processor

Producer that runs Gaussian Sum Fitter on a specific track collection.

max_components

How many gaussians to use to sample the BetheHeitler.

Type:

int

abort_on_error

Abort fitting if an error occurred.

Type:

bool

disable_all_material_handling

Disable material effects on surfaces. True only for debug purpose.

Type:

bool

weight_cutoff

Kill a component if its weight is smaller than a certain threshold.

Type:

float

debug

Enable debug output.

Type:

bool

propagator_step_size

Size of each RK propagator step.

Type:

float

propagator_max_steps

Maximum number of steps for the propagator.

Type:

int

field_map

Path to the location of the magnetic field map.

Type:

str

tagger_tracking

Whether tracking in the tagger.

Type:

bool

out_trk_collection

Name of the output Track collection.

Type:

str

track_collection

Track collection to be refitted with GSF.

Type:

str

meas_collection

Measurements collection in the tracker.

Type:

str

track_passname

The pass name of the track collection.

Type:

str

meas_passname

The pass name of the measurements collection.

Type:

str

track_collection_event_passname

The event pass name of the track collection.

Type:

str

meas_collection_event_passname

The event pass name of the measurements collection.

Type:

str

abort_on_error: bool = False
class_name: str = 'tracking::reco::GSFProcessor'
debug: bool = False
disable_all_material_handling: bool = False
field_map: str = ''
instance_name: str = 'GSFProcessor'
max_components: int = 12
meas_collection: str = 'DigiTaggerSimHits'
meas_collection_event_passname: str = ''
meas_passname: str = ''
module_name: str = 'Tracking'
out_trk_collection: str = 'GSFTracks'
propagator_max_steps: int = 1000
propagator_step_size: float = 200.0
tagger_tracking: bool = True
track_collection: str = 'TaggerTracks'
track_collection_event_passname: str = ''
track_passname: str = ''
weight_cutoff: float = 0.0001
class LDMX.Tracking.tracking.GreedyAmbiguitySolver(instance_name: str = 'GreedyAmbiguitySolver', histograms: list[Histogram] = <factory>, maximum_shared_hits: int = 2, maximum_iterations: int = 1000, n_measurements_min: int = 5, out_trk_collection: str = 'TaggerTracksClean', track_collection: str = 'TaggerTracks', meas_collection: str = 'DigiTaggerSimHits', input_pass_name: str = '')

Bases: Processor

Producer that cleans duplicate tracks from CKF output.

maximum_shared_hits

Maximum number of shared hits for a track to remain.

Type:

int

maximum_iterations

Maximum number of iterations in track cleaning loop.

Type:

int

n_measurements_min

Minimum number of hits on a track.

Type:

int

out_trk_collection

Name of the output Track collection.

Type:

str

track_collection

Track collection to be cleaned.

Type:

str

meas_collection

Measurements collection in the tracker.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

class_name: str = 'tracking::reco::GreedyAmbiguitySolver'
input_pass_name: str = ''
instance_name: str = 'GreedyAmbiguitySolver'
maximum_iterations: int = 1000
maximum_shared_hits: int = 2
meas_collection: str = 'DigiTaggerSimHits'
module_name: str = 'Tracking'
n_measurements_min: int = 5
out_trk_collection: str = 'TaggerTracksClean'
track_collection: str = 'TaggerTracks'
class LDMX.Tracking.tracking.SeedFinderProcessor(instance_name: str = 'SeedFinderProcessor', histograms: list[Histogram] = <factory>, perigee_location: list[float] = <factory>, pmin: float = 0.05, pmax: float = 8.0, d0min: float = 20.0, d0max: float = 20.0, z0max: float = 60.0, phicut: float = 0.1, thetacut: float = 0.2, strategies: list[str] = <factory>, bfield: float = 1.5, input_hits_collection: str = 'TaggerSimHits', out_seed_collection: str = 'SeedTracks', input_pass_name: str = '', sim_particles_coll_name: str = 'SimParticles', sim_particles_passname: str = '', tagger_trks_event_collection_passname: str = '', sim_particles_event_passname: str = '', u_error: float = 0.006, v_error: float = 11.547005383792516)

Bases: Processor

Producer to find Seeds for the KF-based track finding.

perigee_location

3D location of the perigee for the helix track parameters definition.

Type:

list[float]

pmin

Minimum cut on the momentum of the seeds.

Type:

float

pmax

Maximum cut on the momentum of the seeds.

Type:

float

d0min

Minimum d0 allowed for the seeds. Computed at the perigee.

Type:

float

d0max

Maximum d0 allowed for the seeds. Computed at the perigee.

Type:

float

z0max

Maximum z0 allowed for the seeds. Computed at the perigee.

Type:

float

phicut

Cut on phi for seed finding.

Type:

float

thetacut

Cut on theta for seed finding.

Type:

float

strategies

List of 5 hits (3 axial and 2 stereo) for seed finding.

Type:

list[str]

bfield

Magnetic field strength.

Type:

float

input_hits_collection

The name of the input collection of hits to be used for seed finding.

Type:

str

out_seed_collection

The name of the output collection of seeds to be stored.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

sim_particles_coll_name

The name of the sim particles collection.

Type:

str

sim_particles_passname

The pass name of the sim particles.

Type:

str

tagger_trks_event_collection_passname

The pass name of the tagger tracks event collection.

Type:

str

sim_particles_event_passname

The pass name of the sim particles event.

Type:

str

u_error

Uncertainty in the sensitive direction for the seed hits.

Type:

float

v_error

Uncertainty in the insensitive direction for the seed hits.

Type:

float

bfield: float = 1.5
class_name: str = 'tracking::reco::SeedFinderProcessor'
d0max: float = 20.0
d0min: float = 20.0
input_hits_collection: str = 'TaggerSimHits'
input_pass_name: str = ''
instance_name: str = 'SeedFinderProcessor'
module_name: str = 'Tracking'
out_seed_collection: str = 'SeedTracks'
perigee_location: list[float]
phicut: float = 0.1
pmax: float = 8.0
pmin: float = 0.05
sim_particles_coll_name: str = 'SimParticles'
sim_particles_event_passname: str = ''
sim_particles_passname: str = ''
strategies: list[str]
tagger_trks_event_collection_passname: str = ''
thetacut: float = 0.2
u_error: float = 0.006
v_error: float = 11.547005383792516
z0max: float = 60.0
class LDMX.Tracking.tracking.StripClusterProcessor(instance_name: str = 'StripClusterProcessor', histograms: list[Histogram] = <factory>, in_collection: str = 'FittedSiStripHits', in_pass: str = '', out_collection: str = 'StripMeasurements', seed_threshold: float = 4.0, neighbor_threshold: float = 3.0, cluster_threshold: float = 4.0, mean_time_ns: float = 0.0, time_window_ns: float = -1.0, neighbor_delta_t_ns: float = -1.0, max_chi2_ndf: float = -1.0)

Bases: Processor

Clusters FittedSiStripHits into Measurements using nearest-neighbour clustering.

Groups hits by sensor layer, runs nearest-neighbour BFS clustering on each layer (ported from HPS NearestNeighborRMSClusterer), and converts accepted clusters into ldmx::Measurement objects via the Acts tracking geometry.

Applies to both real data (after StripFitProcessor) and simulation.

in_collection

Input FittedSiStripHit collection (default “FittedSiStripHits”).

Type:

str

in_pass

Pass name for the input collection (default “”).

Type:

str

out_collection

Output Measurement collection (default “StripMeasurements”).

Type:

str

seed_threshold

Minimum amplitude/noise_sigma to seed a cluster (default 4.0).

Type:

float

neighbor_threshold

Minimum amplitude/noise_sigma for a strip to join a cluster (default 3.0).

Type:

float

cluster_threshold

Minimum total_amp / sqrt(sum_noise^2) for cluster acceptance (default 4.0).

Type:

float

mean_time_ns

Expected hit time for the seed timing cut [ns] (default 0.0).

Type:

float

time_window_ns

Half-width of the seed timing window [ns]; <= 0 disables (default -1).

Type:

float

neighbor_delta_t_ns

Max |t0_neighbour - cluster_t| [ns] for a strip to join a cluster; <= 0 disables (default -1).

Type:

float

max_chi2_ndf

Max chi2/ndf for a fitted hit to be used; <= 0 disables (default -1).

Type:

float

class_name: str = 'tracking::reco::StripClusterProcessor'
cluster_threshold: float = 4.0
in_collection: str = 'FittedSiStripHits'
in_pass: str = ''
instance_name: str = 'StripClusterProcessor'
max_chi2_ndf: float = -1.0
mean_time_ns: float = 0.0
module_name: str = 'Tracking'
neighbor_delta_t_ns: float = -1.0
neighbor_threshold: float = 3.0
out_collection: str = 'StripMeasurements'
seed_threshold: float = 4.0
time_window_ns: float = -1.0
class LDMX.Tracking.tracking.StripFitProcessor(instance_name: str = 'StripFitProcessor', histograms: list[Histogram] = <factory>, in_collection: str = 'RawSiStripHits', in_pass: str = '', out_collection: str = 'FittedSiStripHits', t_scan_min_ns: float = -50.0, t_scan_max_ns: float = 150.0, t_scan_step_ns: float = 1.0, max_chi2_ndf: float = -1.0)

Bases: Processor

Fits a pulse shape to each RawSiStripHit to extract amplitude and time.

Applies to both real and simulated data. The output FittedSiStripHit collection can be clustered downstream to produce Measurement objects for tracking.

in_collection

Name of the input RawSiStripHit collection.

Type:

str

in_pass

Pass name for the input collection (empty = any).

Type:

str

out_collection

Name of the output FittedSiStripHit collection.

Type:

str

t_scan_min_ns

Lower bound of the hit-time search range [ns] (default -50).

Type:

float

t_scan_max_ns

Upper bound of the hit-time search range [ns] (default 150).

Type:

float

t_scan_step_ns

Step size of the coarse timing scan [ns] (default 1).

Type:

float

max_chi2_ndf

If > 0, discard fits with chi2/ndf above this value (default -1 = off).

Type:

float

class_name: str = 'tracking::reco::StripFitProcessor'
in_collection: str = 'RawSiStripHits'
in_pass: str = ''
instance_name: str = 'StripFitProcessor'
max_chi2_ndf: float = -1.0
module_name: str = 'Tracking'
out_collection: str = 'FittedSiStripHits'
t_scan_max_ns: float = 150.0
t_scan_min_ns: float = -50.0
t_scan_step_ns: float = 1.0
class LDMX.Tracking.tracking.TrackComparisonProcessor(instance_name: str = 'TrackComparisonProcessor', histograms: list[Histogram] = <factory>, trk_collection_smear: str = 'TaggerTracks', trk_collection_digi: str = 'TaggerDigiTracks', pass_name_smear: str = '', pass_name_digi: str = '', do_tagger: bool = True, do_recoil: bool = False, recoil_collection_smear: str = 'RecoilTracks', recoil_collection_digi: str = 'RecoilDigiTracks', recoil_pass_smear: str = '', recoil_pass_digi: str = '', min_truth_prob: float = 0.5, output_file: str = 'track_comparison.root')

Bases: Processor

Compares tracking performance between a truth-smeared and a charge-digitized hit chain on a track-by-track basis.

Tracks from two upstream collections are matched by their truth-matched SimParticle ID. For each matched pair a row is written to a flat ROOT TTree and a set of quick-look TH1F histograms is filled.

trk_collection_smear

Tagger truth-smeared track collection name.

Type:

str

trk_collection_digi

Tagger charge-digitized track collection name.

Type:

str

pass_name_smear

Pass name for the smeared tagger collection.

Type:

str

pass_name_digi

Pass name for the digi tagger collection.

Type:

str

do_tagger

Enable tagger comparison.

Type:

bool

do_recoil

Enable recoil comparison.

Type:

bool

recoil_collection_smear

Recoil truth-smeared track collection name.

Type:

str

recoil_collection_digi

Recoil charge-digitized track collection name.

Type:

str

recoil_pass_smear

Pass name for the smeared recoil collection.

Type:

str

recoil_pass_digi

Pass name for the digi recoil collection.

Type:

str

min_truth_prob

Minimum truth_prob required on both tracks to accept a pair.

Type:

float

output_file

Name of the output ROOT file containing the TTrees.

Type:

str

class_name: str = 'tracking::reco::TrackComparisonProcessor'
do_recoil: bool = False
do_tagger: bool = True
instance_name: str = 'TrackComparisonProcessor'
min_truth_prob: float = 0.5
module_name: str = 'Tracking'
output_file: str = 'track_comparison.root'
pass_name_digi: str = ''
pass_name_smear: str = ''
recoil_collection_digi: str = 'RecoilDigiTracks'
recoil_collection_smear: str = 'RecoilTracks'
recoil_pass_digi: str = ''
recoil_pass_smear: str = ''
trk_collection_digi: str = 'TaggerDigiTracks'
trk_collection_smear: str = 'TaggerTracks'
class LDMX.Tracking.tracking.TrackerVetoProcessor(instance_name: str = 'TrackerVetoProcessor', histograms: list[Histogram] = <factory>, max_d0: float = 10.0, max_z0: float = 40.0, max_chi2_per_ndf: float = 5.0, min_recoil_n: int = 1, min_tagger_momentum: float = 5600.0, min_tagger_hits: int = 4, min_recoil_hits: int = 4, tagger_track_collection: str = 'TaggerTracks', recoil_track_collection: str = 'RecoilTracks', input_tagger_pass_name: str = '', input_recoil_pass_name: str = '', inverse_skim: bool = False, output_collection: str = 'TrackerVeto', sim_particles_passname: str = '', input_collection_events_passname: str = '')

Bases: Processor

Class that flags events that pass the tracker veto.

This processor evaluates tracker events based on recoil and tagger track properties, applying configurable selection criteria to determine whether an event should be flagged.

max_d0

Maximum allowed d0 impact parameter for tracks.

Type:

float

max_z0

Maximum allowed z0 impact parameter for tracks.

Type:

float

max_chi2_per_ndf

Max chi2/ndf required for tracks.

Type:

float

min_recoil_n

Minimum number of recoil tracks required.

Type:

int

min_tagger_momentum

Minimum required momentum for tagger tracks.

Type:

float

min_tagger_hits

Min number of hits for tagger tracks required.

Type:

int

min_recoil_hits

Min number of hits for recoil tracks required.

Type:

int

tagger_track_collection

The name of the tagger track collection.

Type:

str

recoil_track_collection

The name of the recoil track collection.

Type:

str

input_tagger_pass_name

The pass name of the input tagger collections.

Type:

str

input_recoil_pass_name

The pass name of the input recoil collections.

Type:

str

inverse_skim

Boolean flag to invert the selection criteria for skimming purposes.

Type:

bool

output_collection

The name of the new collection.

Type:

str

sim_particles_passname

The pass name of the sim particles.

Type:

str

input_collection_events_passname

The events pass name of the input collection.

Type:

str

class_name: str = 'tracking::TrackerVetoProcessor'
input_collection_events_passname: str = ''
input_recoil_pass_name: str = ''
input_tagger_pass_name: str = ''
instance_name: str = 'TrackerVetoProcessor'
inverse_skim: bool = False
max_chi2_per_ndf: float = 5.0
max_d0: float = 10.0
max_z0: float = 40.0
min_recoil_hits: int = 4
min_recoil_n: int = 1
min_tagger_hits: int = 4
min_tagger_momentum: float = 5600.0
module_name: str = 'Tracking'
output_collection: str = 'TrackerVeto'
recoil_track_collection: str = 'RecoilTracks'
sim_particles_passname: str = ''
tagger_track_collection: str = 'TaggerTracks'
class LDMX.Tracking.tracking.TruthSeedProcessor(instance_name: str = 'TruthSeedProcessor', histograms: list[Histogram] = <factory>, debug: bool = False, pdg_ids: list[int] = <factory>, scoring_hits_coll_name: str = 'TargetScoringPlaneHits', recoil_sim_hits_coll_name: str = 'RecoilSimHits', tagger_sim_hits_coll_name: str = 'TaggerSimHits', n_min_hits_tagger: int = 11, n_min_hits_recoil: int = 7, z_min: float = -9999.0, track_id: int = -9999, pz_cut: float = -9999.0, p_cut: float = 0.0, p_cut_max: float = 100000.0, p_cut_ecal: float = -1.0, skip_tagger: bool = False, skip_recoil: bool = False, max_track_id: int = 5, ecal_sp_coll_name: str = 'EcalScoringPlaneHits', sp_pass_name: str = '', input_pass_name: str = '', sim_particles_coll_name: str = 'SimParticles', sim_particles_passname: str = '', particle_hypothesis: int = 11, beam_electrons_collection: str = 'beamElectrons', tagger_seeds_collection: str = 'TaggerTruthSeeds', tagger_truth_collection: str = 'TaggerTruthTracks', recoil_seeds_collection: str = 'RecoilTruthSeeds', recoil_truth_collection: str = 'RecoilTruthTracks', field_map: str = <factory>)

Bases: Processor

Producer that returns truth seeds to feed the KF based track finding.

Seeds are not smeared, so the fits will be too optimistic, especially the residuals of the estimated locations w.r.t. simulated hits on each surface. The default parameters assume electron seeds are being found in the recoil tracker with loose requirements on momentum and z position.

pdg_ids

List of particle IDs whose scoring plane hits will be used to form initial seeds.

Type:

list[int]

scoring_hits_coll_name

The name of the scoring plane hits from where to get the truth parameters.

Type:

str

recoil_sim_hits_coll_name

The name of the sim tracker hits collection for recoil.

Type:

str

tagger_sim_hits_coll_name

The name of the sim tracker hits collection for tagger.

Type:

str

n_min_hits_tagger

The minimum number of hits to create a seed from in the tagger tracker.

Type:

int

n_min_hits_recoil

The minimum number of hits to create a seed from in the recoil tracker.

Type:

int

z_min

Request a minimum z (mm) for the scoring plane hits.

Type:

float

track_id

If positive, select only scoring hits with that particular track ID.

Type:

int

pz_cut

Minimum cut on the momentum (MeV) of the seed along the beam axis.

Type:

float

p_cut

Minimum cut on the momentum (MeV) of the seed.

Type:

float

p_cut_max

Maximum cut on the momentum of the seed.

Type:

float

p_cut_ecal

Minimum seed track momentum (MeV) at the ECAL scoring plane.

Type:

float

skip_tagger

Ignore the tagger tracker (makes empty collections).

Type:

bool

skip_recoil

Ignore the recoil tracker (makes empty collections).

Type:

bool

max_track_id

Maximum track ID for a hit to be selected in the target scoring plane.

Type:

float

ecal_sp_coll_name

The name of the ECAL scoring plane hits collection.

Type:

str

sp_pass_name

The pass name of the scoring plane hits.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

sim_particles_coll_name

The name of the sim particles collection.

Type:

str

sim_particles_passname

The pass name of the sim particles.

Type:

str

particle_hypothesis

PDG ID for the particle hypothesis.

Type:

int

beam_electrons_collection

The name of the beam electrons collection to use

Type:

str

tagger_seeds_collection

The name of the tagger seeds collection to be stored.

Type:

str

tagger_truth_collection

The name of the tagger truth collection.

Type:

str

recoil_seeds_collection

The name of the recoil seeds collection.

Type:

str

recoil_truth_collection

The name of the recoil truth collection.

Type:

str

field_map

Magnetic field map

Type:

str

beam_electrons_collection: str = 'beamElectrons'
class_name: str = 'tracking::reco::TruthSeedProcessor'
debug: bool = False
ecal_sp_coll_name: str = 'EcalScoringPlaneHits'
field_map: str
input_pass_name: str = ''
instance_name: str = 'TruthSeedProcessor'
max_track_id: int = 5
module_name: str = 'Tracking'
n_min_hits_recoil: int = 7
n_min_hits_tagger: int = 11
p_cut: float = 0.0
p_cut_ecal: float = -1.0
p_cut_max: float = 100000.0
particle_hypothesis: int = 11
pdg_ids: list[int]
pz_cut: float = -9999.0
recoil_seeds_collection: str = 'RecoilTruthSeeds'
recoil_sim_hits_coll_name: str = 'RecoilSimHits'
recoil_truth_collection: str = 'RecoilTruthTracks'
scoring_hits_coll_name: str = 'TargetScoringPlaneHits'
sim_particles_coll_name: str = 'SimParticles'
sim_particles_passname: str = ''
skip_recoil: bool = False
skip_tagger: bool = False
sp_pass_name: str = ''
tagger_seeds_collection: str = 'TaggerTruthSeeds'
tagger_sim_hits_coll_name: str = 'TaggerSimHits'
tagger_truth_collection: str = 'TaggerTruthTracks'
track_id: int = -9999
z_min: float = -9999.0

LDMX.Tracking.vertexing module

class LDMX.Tracking.vertexing.VertexProcessor(instance_name: str = 'VertexProcessor', histograms: list[Histogram] = <factory>, field_map: str = '', trk_coll_name: str = 'Tracks', seeds_coll_name: str = 'RecoilTruthSeeds', input_pass_name: str = '')

Bases: Processor

Producer to form vertices from a track collection.

Currently, only vertex fitting has been implemented. Example use cases: K0 and electronuclear studies.

field_map

The path to the magnetic field map.

Type:

str

trk_coll_name

The name of the collection containing the tracks to vertex.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

seeds_coll_name

The name of the seeds collection.

Type:

str

class_name: str = 'tracking::reco::VertexProcessor'
field_map: str = ''
input_pass_name: str = ''
instance_name: str = 'VertexProcessor'
module_name: str = 'Tracking'
seeds_coll_name: str = 'RecoilTruthSeeds'
trk_coll_name: str = 'Tracks'
class LDMX.Tracking.vertexing.Vertexer(instance_name: str = 'Vertexer', histograms: list[Histogram] = <factory>, debug: bool = False, field_map: str = '', trk_c_name_1: str = 'TaggerTracks', trk_c_name_2: str = 'RecoilTracks', input_pass_name: str = '')

Bases: Processor

Producer that forms vertices between two different track collections e.g. tagger and recoil tracks.

debug

Flag use to enable/disable printing of debug.

Type:

bool

field_map

The path to the magnetic field map.

Type:

str

trk_c_name_1

Name of a track collection to vertex.

Type:

str

trk_c_name_2

Name of a track collection to vertex. This is unique from trk_c_name_1.

Type:

str

input_pass_name

The pass name of the input collections.

Type:

str

class_name: str = 'tracking::reco::Vertexer'
debug: bool = False
field_map: str = ''
input_pass_name: str = ''
instance_name: str = 'Vertexer'
module_name: str = 'Tracking'
trk_c_name_1: str = 'TaggerTracks'
trk_c_name_2: str = 'RecoilTracks'

Module contents