|
ACTS
Experiment-independent tracking
|
Structure that holds configuration parameters for the seed finder algorithm. More...
#include <Acts/Seeding/SeedFinderConfig.hpp>
Public Member Functions | |
| SeedFinderConfig | calculateDerivedQuantities () const |
| Calculate derived quantities from the current configuration. | |
Static Public Member Functions | |
| static bool | noopExperimentCuts (const SpacePoint &, const SpacePoint &, float, bool) |
| defaults experimental cuts to no operation in both seeding algorithms | |
| static bool | voidSpacePointSelector (const SpacePoint &sp) |
| Default space point selector that accepts all space points. | |
Public Attributes | |
| float | binSizeR = 1. * UnitConstants::mm |
| Radial bin size used in space-point grid. | |
| SeedConfirmationRangeConfig | centralSeedConfirmationRange |
| Contains parameters for central seed confirmation. | |
| float | collisionRegionMax = +150 * UnitConstants::mm |
| Maximum z extent of collision region for doublet validation. | |
| float | collisionRegionMin = -150 * UnitConstants::mm |
| Limiting location of collision region in z-axis used to check if doublet origin is within reasonable bounds. | |
| float | cotThetaMax = 10.01788 |
| Maximum allowed cotTheta between two space-points in doublet, used to check if forward angle is within bounds. | |
| float | deltaRMax = 270 * UnitConstants::mm |
| Maximum radial distance between two doublet components (prefer deltaRMaxTopSP and deltaRMacBottomSP to set separate values for outer and inner space-points). | |
| float | deltaRMaxBottomSP = std::numeric_limits<float>::quiet_NaN() |
| Maximum radial distance between inner-middle doublet components. | |
| float | deltaRMaxTopSP = std::numeric_limits<float>::quiet_NaN() |
| Maximum radial distance between middle-outer doublet components. | |
| float | deltaRMiddleMaxSPRange = 10. * UnitConstants::mm |
| Maximum delta R for variable middle SP range calculation. | |
| float | deltaRMiddleMinSPRange = 10. * UnitConstants::mm |
| If useVariableMiddleSPRange is true, the radial range will be calculated based on the maximum and minimum r values of the space-points in the event and a deltaR (deltaRMiddleMinSPRange, deltaRMiddleMaxSPRange). | |
| float | deltaRMin = 5 * UnitConstants::mm |
| Seeding parameters used to define the cuts on space-point doublets. | |
| float | deltaRMinBottomSP = std::numeric_limits<float>::quiet_NaN() |
| Minimum radial distance between inner-middle doublet components. | |
| float | deltaRMinTopSP = std::numeric_limits<float>::quiet_NaN() |
| Minimum radial distance between middle-outer doublet components. | |
| float | deltaZMax = std::numeric_limits<float>::infinity() * UnitConstants::mm |
| Maximum value of z-distance between space-points in doublet. | |
| Delegate< bool(const SpacePoint &, const SpacePoint &, float, bool)> | experimentCuts {DelegateFuncTag<&noopExperimentCuts>{}} |
| Delegate to apply experiment specific cuts during doublet finding. | |
| SeedConfirmationRangeConfig | forwardSeedConfirmationRange |
| Contains parameters for forward seed confirmation. | |
| float | helixCutTolerance = 1. |
| Parameter which can loosen the tolerance of the track seed to form a helix. | |
| float | highland = 0 |
| derived values, set on SeedFinder construction | |
| float | impactMax = 20. * UnitConstants::mm |
| Maximum value of impact parameter estimation of the seed candidates. | |
| bool | interactionPointCut = false |
| Enable cut on the compatibility between interaction point and doublet, this is an useful approximation to speed up the seeding. | |
| bool | isInInternalUnits = true |
| Flag indicating whether configuration uses ACTS internal units. | |
| int | maxBlockSize = 1024 |
| only for Cuda plugin | |
| float | maxPtScattering = 10 * UnitConstants::GeV |
| Maximum transverse momentum for scattering calculation. | |
| float | maxScatteringAngle2 = 0 |
| Squared maximum scattering angle for track validation. | |
| unsigned int | maxSeedsPerSpM = 5 |
| Maximum number (minus one) of accepted seeds per middle space-point. | |
| float | minPt = 400. * UnitConstants::MeV |
| Seeding parameters used to define the cuts on space-point triplets. | |
| int | nAvgTrplPerSpBLimit = 2 |
| Average triplet limit per space-point bin for CUDA. | |
| int | nTrplPerSpBLimit = 100 |
| Maximum number of triplets per space-point bin for CUDA. | |
| float | phiMax = std::numbers::pi_v<float> |
| Maximum phi angle for space-point selection. | |
| float | phiMin = -std::numbers::pi_v<float> |
| Seeding parameters used in the space-point grid creation and bin finding. | |
| float | radLengthPerSeed = 0.05 |
| Term that accounts for the thickness of scattering medium in radiation lengths in the Lynch & Dahl correction to the Highland equation default is 5% TODO: necessary to make amount of material dependent on detector region? | |
| float | rAlign = 0 * UnitConstants::mm |
| Radial alignment uncertainty for space-point uncertainties. | |
| float | rMax = 600 * UnitConstants::mm |
| Maximum radius for space-point selection. | |
| float | rMaxMiddle = 120.f * UnitConstants::mm |
| Maximum radius for middle space-point selection. | |
| float | rMin = 33 * UnitConstants::mm |
| WARNING: if rMin is smaller than impactMax, the bin size will be 2*pi, which will make seeding very slow! | |
| float | rMinMiddle = 60.f * UnitConstants::mm |
| Seeding parameters used to define the region of interest for middle space-point. | |
| std::vector< std::vector< float > > | rRangeMiddleSP |
| Range defined in vector for each z bin. | |
| bool | seedConfirmation = false |
| Seeding parameters used for quality seed confirmation. | |
| std::shared_ptr< SeedFilter< SpacePoint > > | seedFilter |
| Shared pointer to the seed filter for quality assessment. | |
| float | sigmaError = 5 |
| used for measurement (+alignment) uncertainties. | |
| float | sigmaScattering = 5 |
| Number of sigmas of scattering angle to be considered in the minimum pT scattering term. | |
| Delegate< bool(const SpacePoint &)> | spacePointSelector |
| Delegate function for space-point selection filtering. | |
| float | toleranceParam = 1.1 * UnitConstants::mm |
| Tolerance parameter used to check the compatibility of space-point coordinates in xyz. | |
| bool | useDetailedDoubleMeasurementInfo = false |
| Delegates for accessors to detailed information on double measurement that produced the space point. | |
| bool | useVariableMiddleSPRange = false |
| If useVariableMiddleSPRange is set to false, the vector rRangeMiddleSP can be used to define a fixed r range for each z bin: {{rMin, rMax}, ...}. | |
| float | zAlign = 0 * UnitConstants::mm |
| Other parameters. | |
| std::vector< float > | zBinEdges |
| Vector containing the z-bin edges for non equidistant binning in z. | |
| std::vector< std::size_t > | zBinsCustomLooping = {} |
| Order of z bins to loop over when searching for SPs. | |
| float | zMax = 2800 * UnitConstants::mm |
| Maximum z coordinate for space-point selection. | |
| float | zMin = -2800 * UnitConstants::mm |
| Minimum z coordinate for space-point selection. | |
Structure that holds configuration parameters for the seed finder algorithm.
| SeedFinderConfig Acts::SeedFinderConfig< SpacePoint >::calculateDerivedQuantities | ( | ) | const |
Calculate derived quantities from the current configuration.
|
static |
defaults experimental cuts to no operation in both seeding algorithms
|
static |
Default space point selector that accepts all space points.
| sp | The space point to evaluate (unused) |
| float Acts::SeedFinderConfig< SpacePoint >::binSizeR = 1. * UnitConstants::mm |
Radial bin size used in space-point grid.
| SeedConfirmationRangeConfig Acts::SeedFinderConfig< SpacePoint >::centralSeedConfirmationRange |
Contains parameters for central seed confirmation.
| float Acts::SeedFinderConfig< SpacePoint >::collisionRegionMax = +150 * UnitConstants::mm |
Maximum z extent of collision region for doublet validation.
| float Acts::SeedFinderConfig< SpacePoint >::collisionRegionMin = -150 * UnitConstants::mm |
Limiting location of collision region in z-axis used to check if doublet origin is within reasonable bounds.
| float Acts::SeedFinderConfig< SpacePoint >::cotThetaMax = 10.01788 |
Maximum allowed cotTheta between two space-points in doublet, used to check if forward angle is within bounds.
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMax = 270 * UnitConstants::mm |
Maximum radial distance between two doublet components (prefer deltaRMaxTopSP and deltaRMacBottomSP to set separate values for outer and inner space-points).
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMaxBottomSP = std::numeric_limits<float>::quiet_NaN() |
Maximum radial distance between inner-middle doublet components.
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMaxTopSP = std::numeric_limits<float>::quiet_NaN() |
Maximum radial distance between middle-outer doublet components.
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMiddleMaxSPRange = 10. * UnitConstants::mm |
Maximum delta R for variable middle SP range calculation.
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMiddleMinSPRange = 10. * UnitConstants::mm |
If useVariableMiddleSPRange is true, the radial range will be calculated based on the maximum and minimum r values of the space-points in the event and a deltaR (deltaRMiddleMinSPRange, deltaRMiddleMaxSPRange).
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMin = 5 * UnitConstants::mm |
Seeding parameters used to define the cuts on space-point doublets.
Minimum radial distance between two doublet components (prefer deltaRMinTopSP and deltaRMinBottomSP to set separate values for outer and inner space-points)
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMinBottomSP = std::numeric_limits<float>::quiet_NaN() |
Minimum radial distance between inner-middle doublet components.
| float Acts::SeedFinderConfig< SpacePoint >::deltaRMinTopSP = std::numeric_limits<float>::quiet_NaN() |
Minimum radial distance between middle-outer doublet components.
| float Acts::SeedFinderConfig< SpacePoint >::deltaZMax = std::numeric_limits<float>::infinity() * UnitConstants::mm |
Maximum value of z-distance between space-points in doublet.
| Delegate<bool(const SpacePoint& , const SpacePoint& , float , bool )> Acts::SeedFinderConfig< SpacePoint >::experimentCuts {DelegateFuncTag<&noopExperimentCuts>{}} |
Delegate to apply experiment specific cuts during doublet finding.
| SeedConfirmationRangeConfig Acts::SeedFinderConfig< SpacePoint >::forwardSeedConfirmationRange |
Contains parameters for forward seed confirmation.
| float Acts::SeedFinderConfig< SpacePoint >::helixCutTolerance = 1. |
Parameter which can loosen the tolerance of the track seed to form a helix.
This is useful for e.g. misaligned seeding.
| float Acts::SeedFinderConfig< SpacePoint >::highland = 0 |
derived values, set on SeedFinder construction
| float Acts::SeedFinderConfig< SpacePoint >::impactMax = 20. * UnitConstants::mm |
Maximum value of impact parameter estimation of the seed candidates.
| bool Acts::SeedFinderConfig< SpacePoint >::interactionPointCut = false |
Enable cut on the compatibility between interaction point and doublet, this is an useful approximation to speed up the seeding.
| bool Acts::SeedFinderConfig< SpacePoint >::isInInternalUnits = true |
Flag indicating whether configuration uses ACTS internal units.
| int Acts::SeedFinderConfig< SpacePoint >::maxBlockSize = 1024 |
only for Cuda plugin
| float Acts::SeedFinderConfig< SpacePoint >::maxPtScattering = 10 * UnitConstants::GeV |
Maximum transverse momentum for scattering calculation.
| float Acts::SeedFinderConfig< SpacePoint >::maxScatteringAngle2 = 0 |
Squared maximum scattering angle for track validation.
| unsigned int Acts::SeedFinderConfig< SpacePoint >::maxSeedsPerSpM = 5 |
Maximum number (minus one) of accepted seeds per middle space-point.
| float Acts::SeedFinderConfig< SpacePoint >::minPt = 400. * UnitConstants::MeV |
Seeding parameters used to define the cuts on space-point triplets.
Minimum transverse momentum (pT) used to check the r-z slope compatibility of triplets with maximum multiple scattering effect (produced by the minimum allowed pT particle) + a certain uncertainty term. Check the documentation for more information https://acts.readthedocs.io/en/latest/core/reconstruction/pattern_recognition/seeding.html
| int Acts::SeedFinderConfig< SpacePoint >::nAvgTrplPerSpBLimit = 2 |
Average triplet limit per space-point bin for CUDA.
| int Acts::SeedFinderConfig< SpacePoint >::nTrplPerSpBLimit = 100 |
Maximum number of triplets per space-point bin for CUDA.
| float Acts::SeedFinderConfig< SpacePoint >::phiMax = std::numbers::pi_v<float> |
Maximum phi angle for space-point selection.
| float Acts::SeedFinderConfig< SpacePoint >::phiMin = -std::numbers::pi_v<float> |
Seeding parameters used in the space-point grid creation and bin finding.
Geometry Settings + Detector ROI (r, z, phi) range for limiting location of all measurements and grid creation
| float Acts::SeedFinderConfig< SpacePoint >::radLengthPerSeed = 0.05 |
Term that accounts for the thickness of scattering medium in radiation lengths in the Lynch & Dahl correction to the Highland equation default is 5% TODO: necessary to make amount of material dependent on detector region?
| float Acts::SeedFinderConfig< SpacePoint >::rAlign = 0 * UnitConstants::mm |
Radial alignment uncertainty for space-point uncertainties.
| float Acts::SeedFinderConfig< SpacePoint >::rMax = 600 * UnitConstants::mm |
Maximum radius for space-point selection.
| float Acts::SeedFinderConfig< SpacePoint >::rMaxMiddle = 120.f * UnitConstants::mm |
Maximum radius for middle space-point selection.
| float Acts::SeedFinderConfig< SpacePoint >::rMin = 33 * UnitConstants::mm |
WARNING: if rMin is smaller than impactMax, the bin size will be 2*pi, which will make seeding very slow!
| float Acts::SeedFinderConfig< SpacePoint >::rMinMiddle = 60.f * UnitConstants::mm |
Seeding parameters used to define the region of interest for middle space-point.
Radial range for middle space-point The range can be defined manually with (rMinMiddle, rMaxMiddle). If useVariableMiddleSPRange is set to false and the vector rRangeMiddleSP is empty, we use (rMinMiddle, rMaxMiddle) to cut the middle space-points
| std::vector<std::vector<float> > Acts::SeedFinderConfig< SpacePoint >::rRangeMiddleSP |
Range defined in vector for each z bin.
| bool Acts::SeedFinderConfig< SpacePoint >::seedConfirmation = false |
Seeding parameters used for quality seed confirmation.
Enable quality seed confirmation, this is different than default seeding confirmation because it can also be defined for different (r, z) regions of the detector (e.g. forward or central region) by SeedConfirmationRange. Seeds are classified as "high-quality" seeds and normal quality seeds. Normal quality seeds are only selected if no other "high-quality" seeds has been found for that inner-middle doublet.
| std::shared_ptr<SeedFilter<SpacePoint> > Acts::SeedFinderConfig< SpacePoint >::seedFilter |
Shared pointer to the seed filter for quality assessment.
| float Acts::SeedFinderConfig< SpacePoint >::sigmaError = 5 |
used for measurement (+alignment) uncertainties.
find seeds within 5sigma error ellipse
| float Acts::SeedFinderConfig< SpacePoint >::sigmaScattering = 5 |
Number of sigmas of scattering angle to be considered in the minimum pT scattering term.
| Delegate<bool(const SpacePoint&)> Acts::SeedFinderConfig< SpacePoint >::spacePointSelector |
Delegate function for space-point selection filtering.
| float Acts::SeedFinderConfig< SpacePoint >::toleranceParam = 1.1 * UnitConstants::mm |
Tolerance parameter used to check the compatibility of space-point coordinates in xyz.
This is only used in a detector specific check for strip modules
| bool Acts::SeedFinderConfig< SpacePoint >::useDetailedDoubleMeasurementInfo = false |
Delegates for accessors to detailed information on double measurement that produced the space point.
This is mainly referring to space points produced when combining measurement from strips on back-to-back modules. Enables setting of the following delegates.
| bool Acts::SeedFinderConfig< SpacePoint >::useVariableMiddleSPRange = false |
If useVariableMiddleSPRange is set to false, the vector rRangeMiddleSP can be used to define a fixed r range for each z bin: {{rMin, rMax}, ...}.
| float Acts::SeedFinderConfig< SpacePoint >::zAlign = 0 * UnitConstants::mm |
Other parameters.
Alignment uncertainties, used for uncertainties in the non-measurement-plane of the modules which otherwise would be 0 will be added to spacepoint measurement uncertainties (and therefore also multiplied by sigmaError) FIXME: call align1 and align2
| std::vector<float> Acts::SeedFinderConfig< SpacePoint >::zBinEdges |
Vector containing the z-bin edges for non equidistant binning in z.
| std::vector<std::size_t> Acts::SeedFinderConfig< SpacePoint >::zBinsCustomLooping = {} |
Order of z bins to loop over when searching for SPs.
| float Acts::SeedFinderConfig< SpacePoint >::zMax = 2800 * UnitConstants::mm |
Maximum z coordinate for space-point selection.
| float Acts::SeedFinderConfig< SpacePoint >::zMin = -2800 * UnitConstants::mm |
Minimum z coordinate for space-point selection.