RecoTracker
DeDx
interface
TruncatedAverageDeDxEstimator.h
Go to the documentation of this file.
1
#ifndef RecoTrackerDeDx_TruncatedAverageDeDxEstimator_h
2
#define RecoTrackerDeDx_TruncatedAverageDeDxEstimator_h
3
4
#include "
RecoTracker/DeDx/interface/BaseDeDxEstimator.h
"
5
#include "
RecoTracker/DeDx/interface/DeDxTools.h
"
6
#include "
DataFormats/TrackReco/interface/DeDxHit.h
"
7
#include <numeric>
8
9
class
TruncatedAverageDeDxEstimator
:
public
BaseDeDxEstimator
{
10
public
:
11
TruncatedAverageDeDxEstimator
(
const
edm::ParameterSet
& iConfig) {
12
m_fraction
= iConfig.
getParameter
<
double
>(
"fraction"
);
13
}
14
15
std::pair<float, float>
dedx
(
const
reco::DeDxHitCollection
& Hits)
override
{
16
int
nTrunc =
int
(Hits.size() *
m_fraction
);
17
double
sumdedx = 0;
18
for
(
size_t
i
= 0;
i
+ nTrunc < Hits.size();
i
++) {
19
sumdedx += Hits[
i
].charge();
20
}
21
double
avrdedx = (Hits.size()) ? sumdedx / (Hits.size() - nTrunc) : 0.0;
22
return
std::make_pair(avrdedx, -1);
23
}
24
25
private
:
26
float
m_fraction
;
27
};
28
29
#endif
mps_fire.i
i
Definition:
mps_fire.py:355
reco::DeDxHitCollection
std::vector< DeDxHit > DeDxHitCollection
Definition:
DeDxHit.h:41
DeDxHit.h
DeDxTools.h
TruncatedAverageDeDxEstimator::dedx
std::pair< float, float > dedx(const reco::DeDxHitCollection &Hits) override
Definition:
TruncatedAverageDeDxEstimator.h:15
BaseDeDxEstimator.h
edm::ParameterSet
Definition:
ParameterSet.h:36
createfilelist.int
int
Definition:
createfilelist.py:10
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
TruncatedAverageDeDxEstimator
Definition:
TruncatedAverageDeDxEstimator.h:9
BaseDeDxEstimator
Definition:
BaseDeDxEstimator.h:7
TruncatedAverageDeDxEstimator::TruncatedAverageDeDxEstimator
TruncatedAverageDeDxEstimator(const edm::ParameterSet &iConfig)
Definition:
TruncatedAverageDeDxEstimator.h:11
TruncatedAverageDeDxEstimator::m_fraction
float m_fraction
Definition:
TruncatedAverageDeDxEstimator.h:26
Generated for CMSSW Reference Manual by
1.8.16