11 #include "HepPDT/ParticleID.hh" 48 typedef std::vector<int>
vint;
81 double d,
double a,
double t,
double l,
double i,
double p,
double c, std::size_t
h, std::size_t
x) {
125 hits =
new TH1F(name.c_str(), title.c_str(), 19, -0.5, 18.5);
129 chi2 =
new TH1F(name.c_str(), title.c_str(), 100, 0., 30.);
133 pixelhits =
new TH1F(name.c_str(), title.c_str(), 21, -0.5, 20.5);
137 pt_1gev =
new TH1F(name.c_str(), title.c_str(), 100, 0., 2.);
141 tip =
new TH1F(name.c_str(), title.c_str(), 100, -0.3, 0.3);
145 lip =
new TH1F(name.c_str(), title.c_str(), 100, -1., 1.);
149 ips =
new TH1F(name.c_str(), title.c_str(), 100, -25.0, 25.0);
153 sdl =
new TH1F(name.c_str(), title.c_str(), 100, -5., 5.);
157 dta =
new TH1F(name.c_str(), title.c_str(), 100, 0.0, 0.2);
173 hits->Fill(data.
hits);
174 chi2->Fill(data.
chi2);
175 pixelhits->Fill(data.
pt);
176 pt_1gev->Fill(data.
pt);
224 trackQualityType.begin(), trackQualityType.end(), trackQualityType.begin(), (
int (*)(
int))std::tolower);
225 if (trackQualityType ==
"any") {
269 for (std::size_t
i = 0;
i < 6;
i++) {
305 if (!primaryVertexProducer_->empty()) {
307 std::vector<reco::Vertex> sortedList = pvs.
sortedList(*(primaryVertexProducer_.
product()));
308 pv = (sortedList.front());
312 e(0, 0) = 0.0015 * 0.0015;
313 e(1, 1) = 0.0015 * 0.0015;
323 for (; it != jetTracksAssociation->
end(); it++, i++) {
328 GlobalVector direction(jetTracks->first->px(), jetTracks->first->py(), jetTracks->first->pz());
335 double pt = tracks[
index]->pt();
336 double chi2 = tracks[
index]->normalizedChi2();
337 int hits = tracks[
index]->hitPattern().numberOfValidHits();
338 int pixelHits = tracks[
index]->hitPattern().numberOfValidPixelHits();
349 double dz = tracks[
index]->dz() - pvZ;
T getUntrackedParameter(std::string const &, T const &) const
histogram_element_t(double d, double a, double t, double l, double i, double p, double c, std::size_t h, std::size_t x)
std::vector< std::vector< histogram_element_t > > histogram_data_t
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
double maximumChiSquared_
transient_vector_type::const_iterator const_iterator
TrackQuality
track quality
reco::TrackBase::TrackQuality trackQuality_
void LoopOverJetTracksAssociation(const edm::ESHandle< TransientTrackBuilder > &, const edm::Handle< reco::VertexCollection > &, const edm::Handle< reco::JetTracksAssociationCollection > &)
reco::TransientTrack build(const reco::Track *p) const
std::vector< reco::Vertex > sortedList(const reco::VertexCollection &primaryVertex) const
const_iterator end() const
math::Error< dimension >::type Error
covariance error matrix (3x3)
def setup(process, global_tag, zero_tesla=False)
TrackClassifier classifier_
histogram_element_t(const histogram_element_t &orig)
TrackClassifier const & evaluate(reco::TrackBaseRef const &)
Classify the RecoTrack in categories.
histogram_t(const std::string &particleType)
#define DEFINE_FWK_MODULE(type)
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
int minimumNumberOfPixelHits_
double z() const
z coordinate
void analyze(const edm::Event &, const edm::EventSetup &) override
math::XYZPoint Point
point in the space
void newEvent(edm::Event const &, edm::EventSetup const &)
Pre-process event information (for accessing reconstraction information)
edm::InputTag trackProducer_
bool is(Category category) const
Returns track flag for a given category.
~QualityCutsAnalyzer() override
std::vector< std::string > vstring
Get track history and classify it in function of their .
static TrackQuality qualityByName(const std::string &name)
T const * product() const
void Fill(const histogram_element_t &data)
QualityCutsAnalyzer(const edm::ParameterSet &)
char data[epos_bytes_allocation]
double minimumTransverseMomentum_
edm::InputTag primaryVertexProducer_
const_iterator begin() const
T const * product() const
histogram_data_t histogram_data_
edm::InputTag jetTracksAssociation_