84 : trkZMax_(iConfig.getParameter<double>(
"trk_zMax")),
85 trkPtMax_(iConfig.getParameter<double>(
"trk_ptMax")),
86 trkEtaMax_(iConfig.getParameter<double>(
"trk_etaMax")),
87 lowpTJetMinTrackMultiplicity_(iConfig.getParameter<
int>(
"lowpTJetMinTrackMultiplicity")),
88 lowpTJetThreshold_(iConfig.getParameter<double>(
"lowpTJetThreshold")),
89 highpTJetMinTrackMultiplicity_(iConfig.getParameter<
int>(
"highpTJetMinTrackMultiplicity")),
90 highpTJetThreshold_(iConfig.getParameter<double>(
"highpTJetThreshold")),
91 zBins_(iConfig.getParameter<
int>(
"zBins")),
92 etaBins_(iConfig.getParameter<
int>(
"etaBins")),
93 phiBins_(iConfig.getParameter<
int>(
"phiBins")),
94 minTrkJetpT_(iConfig.getParameter<double>(
"minTrkJetpT")),
95 displaced_(iConfig.getParameter<
bool>(
"displaced")),
96 d0CutNStubs4_(iConfig.getParameter<double>(
"d0_cutNStubs4")),
97 d0CutNStubs5_(iConfig.getParameter<double>(
"d0_cutNStubs5")),
98 nDisplacedTracks_(iConfig.getParameter<
int>(
"nDisplacedTracks")),
105 produces<TkJetCollection>(
"L1TrackJetsExtended");
107 produces<TkJetCollection>(
"L1TrackJets");
120 for (
unsigned int this_l1track = 0; this_l1track < TTTrackHandle->
size(); this_l1track++) {
153 std::vector<float> zmins, zmaxs;
154 for (
int zbin = 0; zbin <
zBins_; zbin++) {
160 std::vector<std::vector<EtaPhiBin>> L1clusters;
162 std::vector<EtaPhiBin> L2clusters;
167 epbins_default[
i][
j].
pTtot = 0;
168 epbins_default[
i][
j].
used =
false;
175 for (
unsigned int zbin = 0; zbin < zmins.size(); ++zbin) {
177 float zmin = zmins[zbin];
178 float zmax = zmaxs[zbin];
193 if (zbin == 0 &&
zmin == trkZ)
207 if ((trketa <
eta_min) || (trketa >
eta_max) || (trkphi < phi_min) || (trkphi > phi_max))
224 for (
int phibin = 0; phibin <
phiBins_; ++phibin) {
225 L1clusters.push_back(L1_clustering<EtaPhiBin, float, float, float>(epbins[phibin],
etaBins_,
etaStep_));
233 for (
unsigned int k = 0;
k < L2clusters.size(); ++
k) {
239 sum_pt += L2clusters[
k].pTtot;
249 mzb.
nclust = L2clusters.size();
254 vector<Ptr<L1TTTrackType>> L1TrackAssocJet;
255 for (
unsigned int j = 0;
j < mzb.
clusters.size(); ++
j) {
263 int totalDisptrk = mzb.
clusters[
j].nxtracks;
267 L1TrackAssocJet.clear();
268 for (
unsigned int itrk = 0; itrk < mzb.
clusters[
j].trackidx.size(); itrk++)
286 "L1TrackInputTag",
edm::InputTag(
"l1tTrackVertexAssociationProducerForJets",
"Level1TTTracksSelectedAssociated"));
287 desc.add<
double>(
"trk_zMax", 15.0);
288 desc.add<
double>(
"trk_ptMax", 200.0);
289 desc.add<
double>(
"trk_etaMax", 2.4);
290 desc.add<
double>(
"minTrkJetpT", -1.0);
291 desc.add<
int>(
"etaBins", 24);
292 desc.add<
int>(
"phiBins", 27);
293 desc.add<
int>(
"zBins", 1);
294 desc.add<
double>(
"d0_cutNStubs4", -1);
295 desc.add<
double>(
"d0_cutNStubs5", -1);
296 desc.add<
int>(
"lowpTJetMinTrackMultiplicity", 2);
297 desc.add<
double>(
"lowpTJetThreshold", 50.0);
298 desc.add<
int>(
"highpTJetMinTrackMultiplicity", 3);
299 desc.add<
double>(
"highpTJetThreshold", 100.0);
300 desc.add<
bool>(
"displaced",
false);
301 desc.add<
int>(
"nDisplacedTracks", 2);
302 descriptions.
add(
"l1tTrackJets",
desc);
const int highpTJetMinTrackMultiplicity_
const float d0CutNStubs4_
const float lowpTJetThreshold_
Sin< T >::type sin(const T &t)
std::vector< unsigned int > trackidx
L1TrackJetProducer(const ParameterSet &)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
const float d0CutNStubs5_
vector< L1TTTrackType > L1TTTrackCollectionType
static void fillDescriptions(ConfigurationDescriptions &descriptions)
const float highpTJetThreshold_
vector< Ptr< L1TTTrackType > > L1TrkPtrs_
std::vector< EtaPhiBin > clusters
Cos< T >::type cos(const T &t)
Abs< T >::type abs(const T &t)
#define DEFINE_FWK_MODULE(type)
const EDGetTokenT< L1TTTrackRefCollectionType > trackToken_
size_type size() const
Size of the RefVector.
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void produce(Event &, const EventSetup &) override
Class to store the L1 Track Trigger tracks.
void add(std::string const &label, ParameterSetDescription const &psetDescription)
TTTrack< Ref_Phase2TrackerDigi_ > L1TTTrackType
const int lowpTJetMinTrackMultiplicity_
const int nDisplacedTracks_
std::vector< TkJet > TkJetCollection
edm::RefVector< L1TTTrackCollectionType > L1TTTrackRefCollectionType
const double minTrkJetpT_