11 #include "HepPDT/ParticleID.hh" 48 virtual void endJob()
override;
52 typedef std::vector<int>
vint;
138 hits =
new TH1F(name.c_str(), title.c_str(), 19, -0.5, 18.5);
142 chi2 =
new TH1F(name.c_str(), title.c_str(), 100, 0., 30.);
146 pixelhits =
new TH1F(name.c_str(), title.c_str(), 21, -0.5, 20.5);
150 pt_1gev =
new TH1F(name.c_str(), title.c_str(), 100, 0., 2.);
154 tip =
new TH1F(name.c_str(), title.c_str(), 100, -0.3, 0.3);
158 lip =
new TH1F(name.c_str(), title.c_str(), 100, -1., 1.);
162 ips =
new TH1F(name.c_str(), title.c_str(), 100, -25.0, 25.0);
166 sdl =
new TH1F(name.c_str(), title.c_str(), 100, -5., 5.);
170 dta =
new TH1F(name.c_str(), title.c_str(), 100, 0.0, 0.2);
188 hits->Fill(data.
hits);
189 chi2->Fill(data.
chi2);
190 pixelhits->Fill(data.
pt);
191 pt_1gev->Fill(data.
pt);
242 std::transform(trackQualityType.begin(), trackQualityType.end(), trackQualityType.begin(), (
int(*)(
int)) std::tolower);
243 if (trackQualityType ==
"any")
278 primaryVertexCollection,
300 for (std::size_t
i=0;
i<6;
i++)
341 if (primaryVertexProducer_->size() != 0)
344 std::vector<reco::Vertex> sortedList = pvs.
sortedList(*(primaryVertexProducer_.
product()));
345 pv = (sortedList.front());
351 e(0,0)=0.0015*0.0015;
352 e(1,1)=0.0015*0.0015;
362 for (; it != jetTracksAssociation->
end(); it++, i++)
368 GlobalVector direction(jetTracks->first->px(), jetTracks->first->py(), jetTracks->first->pz());
376 double pt = tracks[
index]->pt();
377 double chi2 = tracks[
index]->normalizedChi2();
378 int hits = tracks[
index]->hitPattern().numberOfValidHits();
379 int pixelHits = tracks[
index]->hitPattern().numberOfValidPixelHits();
394 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
#define DEFINE_FWK_MODULE(type)
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
virtual void endJob() override
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)
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
int minimumNumberOfPixelHits_
double z() const
z coordinate
virtual 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.
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)
virtual void beginJob() override
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_