|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRKVERTEXSEEDFINDERUTILIS_GAUSSIANTRACKDENSITY_H
6 #define TRKVERTEXSEEDFINDERUTILIS_GAUSSIANTRACKDENSITY_H
18 class GaussianTrackDensity;
35 using base_class::base_class;
42 globalMaximum (
const std::vector<const Track*>& vectorTrk)
const override final;
51 std::unique_ptr<ITrackDensity>& density)
const override final;
58 globalMaximum (
const std::vector<const TrackParameters*>& perigeeList)
const override final;
66 globalMaximum (
const std::vector<const TrackParameters*>& perigeeList,
67 std::unique_ptr<ITrackDensity>& density)
const override final;
70 const std::vector<const TrackParameters*>& perigeeList)
130 double z,
double& density,
double& firstDerivative,
131 double& secondDerivative)
const override final;
148 const double z0SignificanceCut);
152 double secondDerivative,
double& maxZ,
154 double& maxSecondDerivative)
const {
158 maxSecondDerivative = secondDerivative;
192 std::pair<const GaussianTrackDensity::TrackEntry, Perigee>>>;
212 std::pair<double,double>
222 void addTracks(
const std::vector<const TrackParameters*>& perigeeList,
234 "Maximum radial impact parameter significance to use track"
243 "Maximum longitudinal impact parameter significance to include track in "
253 "Peak search: True means assume Gaussian behavior, False means "
virtual std::pair< double, double > globalMaximumWithWidth(const std::vector< const TrackParameters * > &perigeeList) const override final
#define maxValue(current, test)
@ z
global position (cartesian)
TrackEntry & operator=(TrackEntry &&)=default
TrackDensityEval(double z_coordinate)
virtual double globalMaximum(const std::vector< const Track * > &vectorTrk) const override final
Find position of global maximum for density function.
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
virtual double trackDensity(double z) const override final
Evaluate the density function at the specified coordinate along the beamline.
TrackEntry(const TrackEntry &)=default
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
TrackEntry & operator=(const TrackEntry &)=default
TrackEntry(double c0, double c1, double c2, double zMin, double zMax)
std::pair< double, double > globalMaximumWithWidth() const
Return position of global maximum with Gaussian width for density function.
STL-style allocator wrapper for ArenaPoolAllocator.
std::map< Perigee, GaussianTrackDensity::TrackEntry, pred_perigee, SG::ArenaPoolSTLAllocator< std::pair< const Perigee, GaussianTrackDensity::TrackEntry > >> trackMap
bool operator()(const Perigee &left, const Perigee &right) const
std::map< GaussianTrackDensity::TrackEntry, Perigee, pred_entry_by_max, SG::ArenaPoolSTLAllocator< std::pair< const GaussianTrackDensity::TrackEntry, Perigee > >> lowerMap
double firstDerivative() const
double globalMaximum() const
Return position of global maximum for density function.
TrackDensity(bool gaussStep)
void addTrack(const TrackEntry &entry)
double secondDerivative() const
Ensure that the ATLAS eigen extensions are properly loaded.
void addTracks(const std::vector< const TrackParameters * > &perigeeList, TrackDensity &density) const
Add a set of tracks to a density object.
double stepSize(double y, double dy, double ddy) const
TrackEntry(TrackEntry &&)=default
Gaudi::Property< double > m_d0MaxSignificance
STL-style allocator wrapper for ArenaPoolAllocator.
void updateMaximum(double trialZ, double trialValue, double secondDerivative, double &maxZ, double &maxValue, double &maxSecondDerivative) const
void addTrack(const Perigee &itrk, const double d0SignificanceCut, const double z0SignificanceCut)
Add a track to the set being considered.
virtual ~TrackDensity()=default
double m_secondDerivative
double globalMaximumImpl(const std::vector< const TrackParameters * > &perigeeList, TrackDensity &density) const
Find position of global maximum for density function.
Gaudi::Property< bool > m_gaussStep
Gaudi::Property< double > m_z0MaxSignificance
bool operator()(const TrackEntry &left, const TrackEntry &right) const
std::pair< double, double > globalMaximumWithWidthImpl(const std::vector< const TrackParameters * > &perigeeList, TrackDensity &density) const
Find position of global maximum with Gaussian width for density function.