CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Attributes
cms::HTTTopJetProducer Class Reference

#include <HTTTopJetProducer.h>

Inheritance diagram for cms::HTTTopJetProducer:
FastjetJetProducer VirtualJetProducer edm::stream::EDProducer<> edm::stream::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void addHTTTopJetTagInfoCollection (edm::Event &iEvent, const edm::EventSetup &iSetup, edm::OrphanHandle< reco::BasicJetCollection > &oh) override
 
 HTTTopJetProducer (const edm::ParameterSet &ps)
 
void produce (edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
void runAlgorithm (edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
 ~HTTTopJetProducer () override
 
- Public Member Functions inherited from FastjetJetProducer
 FastjetJetProducer (const edm::ParameterSet &iConfig)
 
void produce (edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
 ~FastjetJetProducer () override
 
- Public Member Functions inherited from VirtualJetProducer
std::string jetType () const
 
void produce (edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
 VirtualJetProducer (const edm::ParameterSet &iConfig)
 
 ~VirtualJetProducer () override
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
- Public Member Functions inherited from edm::stream::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
virtual ~ProducerBase () noexcept(false)
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from FastjetJetProducer
static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static void fillDescriptionsFromFastJetProducer (edm::ParameterSetDescription &desc)
 
- Static Public Member Functions inherited from VirtualJetProducer
static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static void fillDescriptionsFromVirtualJetProducer (edm::ParameterSetDescription &desc)
 
- Static Public Member Functions inherited from edm::stream::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Attributes

int filtN_
 
double filtR_
 
std::auto_ptr< fastjet::HEPTopTaggerV2 > fjHEPTopTagger_
 
double massRatioWidth_
 
double maxCandMass_
 
double maxFatjetAbsEta_
 
double maxM13Cut_
 
double maxR_
 
double minCandMass_
 
double minCandPt_
 
double minFatjetPt_
 
double minM13Cut_
 
double minM23Cut_
 
double minR_
 
double minSubjetPt_
 
int mode_
 
double muCut_
 
bool optimalR_
 
bool qJets_
 
bool rejectMinR_
 
double subjetMass_
 
bool verbose_
 

Additional Inherited Members

- Public Types inherited from FastjetJetProducer
typedef boost::shared_ptr< DynamicRfiltDynamicRfiltPtr
 
typedef fastjet::Transformer transformer
 
typedef std::vector< transformer_ptrtransformer_coll
 
typedef std::unique_ptr< transformertransformer_ptr
 
- Public Types inherited from VirtualJetProducer
typedef boost::shared_ptr< fastjet::GhostedAreaSpec > ActiveAreaSpecPtr
 
typedef boost::shared_ptr< fastjet::AreaDefinition > AreaDefinitionPtr
 
typedef boost::shared_ptr< fastjet::ClusterSequence > ClusterSequencePtr
 
typedef boost::shared_ptr< fastjet::JetDefinition > JetDefPtr
 
typedef boost::shared_ptr< fastjet::JetDefinition::Plugin > PluginPtr
 
typedef boost::shared_ptr< fastjet::RangeDefinition > RangeDefPtr
 
- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDProducerBase
typedef EDProducerAdaptorBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from FastjetJetProducer
virtual void produceTrackJets (edm::Event &iEvent, const edm::EventSetup &iSetup)
 
- Protected Member Functions inherited from VirtualJetProducer
virtual void copyConstituents (const std::vector< fastjet::PseudoJet > &fjConstituents, reco::Jet *jet)
 
virtual std::vector< reco::CandidatePtrgetConstituents (const std::vector< fastjet::PseudoJet > &fjConstituents)
 
virtual void inputTowers ()
 
virtual bool isAnomalousTower (reco::CandidatePtr input)
 
bool makeBasicJet (const JetType::Type &fTag)
 
bool makeCaloJet (const JetType::Type &fTag)
 
bool makeGenJet (const JetType::Type &fTag)
 
bool makePFClusterJet (const JetType::Type &fTag)
 
bool makePFJet (const JetType::Type &fTag)
 
virtual void makeProduces (std::string s, std::string tag="")
 
bool makeTrackJet (const JetType::Type &fTag)
 
void offsetCorrectJets (std::vector< fastjet::PseudoJet > &orphanInput)
 
virtual void output (edm::Event &iEvent, edm::EventSetup const &iSetup)
 
template<typename T >
void writeCompoundJets (edm::Event &iEvent, edm::EventSetup const &iSetup)
 function template to write out the outputs More...
 
template<typename T >
void writeJets (edm::Event &iEvent, edm::EventSetup const &iSetup)
 
template<typename T >
void writeJetsWithConstituents (edm::Event &iEvent, edm::EventSetup const &iSetup)
 function template to write out the outputs More...
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
- Protected Attributes inherited from VirtualJetProducer
int activeAreaRepeats_
 
bool doAreaDiskApprox_
 
bool doAreaFastjet_
 
bool doFastJetNonUniform_
 
bool doPUOffsetCorr_
 
bool doPVCorrection_
 
bool doRhoFastjet_
 
ActiveAreaSpecPtr fjActiveArea_
 
AreaDefinitionPtr fjAreaDefinition_
 
ClusterSequencePtr fjClusterSeq_
 
std::vector< fastjet::PseudoJet > fjInputs_
 
JetDefPtr fjJetDefinition_
 
std::vector< fastjet::PseudoJet > fjJets_
 
PluginPtr fjPlugin_
 
RangeDefPtr fjRangeDef_
 
bool fromHTTTopJetProducer_
 
double ghostArea_
 
double ghostEtaMax_
 
edm::EDGetTokenT< reco::VertexCollectioninput_vertex_token_
 
double inputEMin_
 
double inputEtMin_
 
std::vector< edm::Ptr< reco::Candidate > > inputs_
 
std::string jetAlgorithm_
 
std::string jetCollInstanceName_
 
double jetPtMin_
 
std::string jetType_
 
JetType::Type jetTypeE
 
unsigned int maxInputs_
 
unsigned int minSeed_
 
std::string moduleLabel_
 
unsigned int nExclude_
 
std::vector< double > puCenters_
 
std::string puSubtractorName_
 
double puWidth_
 
bool restrictInputs_
 
double rhoEtaMax_
 
double rParam_
 
edm::InputTag src_
 
edm::InputTag srcPVs_
 
boost::shared_ptr< PileUpSubtractorsubtractor_
 
bool useDeterministicSeed_
 
bool useExplicitGhosts_
 
int verbosity_
 
reco::Particle::Point vertex_
 
double voronoiRfact_
 
bool writeCompound_
 
bool writeJetsWithConst_
 

Detailed Description

Definition at line 79 of file HTTTopJetProducer.h.

Constructor & Destructor Documentation

HTTTopJetProducer::HTTTopJetProducer ( const edm::ParameterSet ps)

Definition at line 11 of file HTTTopJetProducer.cc.

References filtN_, filtR_, fjHEPTopTagger_, VirtualJetProducer::fromHTTTopJetProducer_, edm::ParameterSet::getParameter(), massRatioWidth_, maxCandMass_, maxFatjetAbsEta_, maxM13Cut_, maxR_, minCandMass_, minCandPt_, minFatjetPt_, minM13Cut_, minM23Cut_, minR_, minSubjetPt_, mode_, muCut_, optimalR_, qJets_, rejectMinR_, subjetMass_, and verbose_.

11  :
12  FastjetJetProducer( conf ),
13  optimalR_(false),
14  qJets_(false),
15  minFatjetPt_(200.),
16  minSubjetPt_(20.),
17  minCandPt_(200.),
18  maxFatjetAbsEta_(2.5),
19  subjetMass_(30.),
20  muCut_(0.8),
21  filtR_(0.3),
22  filtN_(5),
23  mode_(0),
24  minCandMass_(150.),
25  maxCandMass_(200.),
26  massRatioWidth_(15),
27  minM23Cut_(0.35),
28  minM13Cut_(0.2),
29  maxM13Cut_(1.3),
30  maxR_(1.5),
31  minR_(0.5),
32  rejectMinR_(false),
33  verbose_(false )
34 {
35 
36  // Read in all the options from the configuration
37  optimalR_ = conf.getParameter<bool>("optimalR");
38  qJets_ = conf.getParameter<bool>("qJets");
39  minFatjetPt_ = conf.getParameter<double>("minFatjetPt");
40  minSubjetPt_ = conf.getParameter<double>("minSubjetPt");
41  minCandPt_ = conf.getParameter<double>("minCandPt");
42  maxFatjetAbsEta_ = conf.getParameter<double>("maxFatjetAbsEta");
43  subjetMass_ = conf.getParameter<double>("subjetMass");
44  muCut_ = conf.getParameter<double>("muCut");
45  filtR_ = conf.getParameter<double>("filtR");
46  filtN_ = conf.getParameter<int>("filtN");
47  mode_ = conf.getParameter<int>("mode");
48  minCandMass_ = conf.getParameter<double>("minCandMass");
49  maxCandMass_ = conf.getParameter<double>("maxCandMass");
50  massRatioWidth_ = conf.getParameter<double>("massRatioWidth");
51  minM23Cut_ = conf.getParameter<double>("minM23Cut");
52  minM13Cut_ = conf.getParameter<double>("minM13Cut");
53  maxM13Cut_ = conf.getParameter<double>("maxM13Cut");
54  maxR_ = conf.getParameter<double>("maxR");
55  minR_ = conf.getParameter<double>("minR");
56  rejectMinR_ = conf.getParameter<bool>("rejectMinR");
57  verbose_ = conf.getParameter<bool>("verbose");
58 
59  // Create the tagger-wrapper
60  produces<HTTTopJetTagInfoCollection>();
61 
62  // Signal to the VirtualJetProducer that we have to add HTT information
64 
65  fjHEPTopTagger_ = std::auto_ptr<fastjet::HEPTopTaggerV2>(new fastjet::HEPTopTaggerV2(
66  optimalR_,
67  qJets_,
68  minSubjetPt_,
69  minCandPt_,
70  subjetMass_,
71  muCut_,
72  filtR_,
73  filtN_,
74  mode_,
75  minCandMass_,
76  maxCandMass_,
77  massRatioWidth_,
78  minM23Cut_,
79  minM13Cut_,
80  maxM13Cut_,
81  rejectMinR_
82  ));
83 
84 }
std::auto_ptr< fastjet::HEPTopTaggerV2 > fjHEPTopTagger_
FastjetJetProducer(const edm::ParameterSet &iConfig)
cms::HTTTopJetProducer::~HTTTopJetProducer ( )
inlineoverride

Member Function Documentation

void HTTTopJetProducer::addHTTTopJetTagInfoCollection ( edm::Event iEvent,
const edm::EventSetup iSetup,
edm::OrphanHandle< reco::BasicJetCollection > &  oh 
)
overridevirtual

Reimplemented from VirtualJetProducer.

Definition at line 145 of file HTTTopJetProducer.cc.

References reco::HTTTopJetProperties::fjEta, VirtualJetProducer::fjJets_, reco::HTTTopJetProperties::fjMass, reco::HTTTopJetProperties::fjPhi, reco::HTTTopJetProperties::fjPt, reco::HTTTopJetProperties::fRec, reco::HTTTopJetTagInfo::insert(), reco::HTTTopJetProperties::massRatioPassed, eostools::move(), reco::HTTTopJetProperties::prunedMass, reco::HTTTopJetProperties::ptForRoptCalc, edm::Event::put(), reco::HTTTopJetProperties::qEpsilon, reco::HTTTopJetProperties::qSigmaM, reco::HTTTopJetProperties::qWeight, reco::HTTTopJetProperties::ropt, reco::HTTTopJetProperties::roptCalc, alignCSCRings::s, combinedMVAV2BJetTags_cfi::tagInfos, reco::HTTTopJetProperties::tau1Filtered, reco::HTTTopJetProperties::tau1Unfiltered, reco::HTTTopJetProperties::tau2Filtered, reco::HTTTopJetProperties::tau2Unfiltered, reco::HTTTopJetProperties::tau3Filtered, reco::HTTTopJetProperties::tau3Unfiltered, reco::HTTTopJetProperties::topMass, and reco::HTTTopJetProperties::unfilteredMass.

Referenced by ~HTTTopJetProducer().

147  {
148 
149 
150  // Set up output list
151  auto tagInfos = std::make_unique<HTTTopJetTagInfoCollection>();
152 
153  // Loop over jets
154  for (size_t ij=0; ij != fjJets_.size(); ij++){
155 
156  HTTTopJetProperties properties;
157  HTTTopJetTagInfo tagInfo;
158 
159  // Black magic:
160  // In the standard CA treatment the RefToBase is made from the handle directly
161  // Since we only have a OrphanHandle (the JetCollection is created by this process)
162  // we have to take the detour via the Ref
164  edm::RefToBase<reco::Jet> rtb(ref);
165 
166  fastjet::HEPTopTaggerV2Structure *s = (fastjet::HEPTopTaggerV2Structure*) fjJets_[ij].structure_non_const_ptr();
167 
168  properties.fjMass = s->fj_mass();
169  properties.fjPt = s->fj_pt();
170  properties.fjEta = s->fj_eta();
171  properties.fjPhi = s->fj_phi();
172 
173  properties.topMass = s->top_mass();
174  properties.unfilteredMass = s->unfiltered_mass();
175  properties.prunedMass = s->pruned_mass();
176  properties.fRec = s->fRec();
177  properties.massRatioPassed = s->mass_ratio_passed();
178 
179  properties.ropt = s->ropt();
180  properties.roptCalc = s->roptCalc();
181  properties.ptForRoptCalc = s->ptForRoptCalc();
182 
183  properties.tau1Unfiltered = s->Tau1Unfiltered();
184  properties.tau2Unfiltered = s->Tau2Unfiltered();
185  properties.tau3Unfiltered = s->Tau3Unfiltered();
186  properties.tau1Filtered = s->Tau1Filtered();
187  properties.tau2Filtered = s->Tau2Filtered();
188  properties.tau3Filtered = s->Tau3Filtered();
189  properties.qWeight = s->qweight();
190  properties.qEpsilon = s->qepsilon();
191  properties.qSigmaM = s->qsigmaM();
192 
193  tagInfo.insert(rtb, properties );
194  tagInfos->push_back( tagInfo );
195  }
196 
197  iEvent.put(std::move(tagInfos));
198 
199 };
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:127
std::vector< fastjet::PseudoJet > fjJets_
void insert(const edm::RefToBase< Jet > &jet, const HTTTopJetProperties &properties)
def move(src, dest)
Definition: eostools.py:510
void HTTTopJetProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 201 of file HTTTopJetProducer.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), DEFINE_FWK_MODULE, FastjetJetProducer::fillDescriptionsFromFastJetProducer(), VirtualJetProducer::fillDescriptionsFromVirtualJetProducer(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by ~HTTTopJetProducer().

201  {
202 
204 
205  desc.add<bool> ("optimalR", true);
206  desc.add<bool> ("qJets", false);
207  desc.add<double>("minFatjetPt", 200.);
208  desc.add<double>("minSubjetPt", 0.);
209  desc.add<double>("minCandPt", 0.);
210  desc.add<double>("maxFatjetAbsEta", 99.);
211  desc.add<double>("subjetMass", 30.);
212  desc.add<double>("filtR", 0.3);
213  desc.add<int> ("filtN", 5);
214  desc.add<int> ("mode", 4);
215  desc.add<double>("minCandMass", 0.);
216  desc.add<double>("maxCandMass", 999999.);
217  desc.add<double>("massRatioWidth",999999.);
218  desc.add<double>("minM23Cut", 0.);
219  desc.add<double>("minM13Cut", 0.);
220  desc.add<double>("maxM13Cut", 999999.);
221  desc.add<double>("maxR", 1.5);
222  desc.add<double>("minR", 0.5);
223  desc.add<bool> ("rejectMinR", false);
224  desc.add<bool> ("verbose", false);
225 
226  desc.add<int> ("algorithm", 1); // where is it needed?
227 
231  desc.add<std::string> ("jetCollInstanceName","SubJets");
233 
234  descriptions.add("HTTTopJetProducer",desc);
235 
236 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
static void fillDescriptionsFromFastJetProducer(edm::ParameterSetDescription &desc)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptionsFromVirtualJetProducer(edm::ParameterSetDescription &desc)
void HTTTopJetProducer::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 90 of file HTTTopJetProducer.cc.

References fjHEPTopTagger_, edm::RandomNumberGenerator::getEngine(), FastjetJetProducer::produce(), qJets_, and edm::Event::streamID().

Referenced by ~HTTTopJetProducer().

91 {
92 
93  if (qJets_){
95  CLHEP::HepRandomEngine* engine = &rng->getEngine(e.streamID());
96  fjHEPTopTagger_->set_rng(engine);
97  }
98 
100 }
std::auto_ptr< fastjet::HEPTopTaggerV2 > fjHEPTopTagger_
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
void HTTTopJetProducer::runAlgorithm ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from FastjetJetProducer.

Definition at line 102 of file HTTTopJetProducer.cc.

References gather_cfg::cout, VirtualJetProducer::doAreaFastjet_, VirtualJetProducer::doRhoFastjet_, VirtualJetProducer::fjAreaDefinition_, VirtualJetProducer::fjClusterSeq_, fjHEPTopTagger_, VirtualJetProducer::fjInputs_, VirtualJetProducer::fjJetDefinition_, VirtualJetProducer::fjJets_, mps_fire::i, maxFatjetAbsEta_, minFatjetPt_, perp(), verbose_, and VirtualJetProducer::voronoiRfact_.

Referenced by ~HTTTopJetProducer().

103 {
104 
105  if ( !doAreaFastjet_ && !doRhoFastjet_) {
106  fjClusterSeq_ = ClusterSequencePtr( new fastjet::ClusterSequence( fjInputs_, *fjJetDefinition_ ) );
107  } else if (voronoiRfact_ <= 0) {
108  fjClusterSeq_ = ClusterSequencePtr( new fastjet::ClusterSequenceArea( fjInputs_, *fjJetDefinition_ , *fjAreaDefinition_ ) );
109  } else {
110  fjClusterSeq_ = ClusterSequencePtr( new fastjet::ClusterSequenceVoronoiArea( fjInputs_, *fjJetDefinition_ , fastjet::VoronoiAreaSpec(voronoiRfact_) ) );
111  }
112 
113  //Run the jet clustering
114  vector<fastjet::PseudoJet> inclusiveJets = fjClusterSeq_->inclusive_jets(minFatjetPt_);
115 
116  if ( verbose_ ) cout << "Getting central jets" << endl;
117  // Find the transient central jets
118  vector<fastjet::PseudoJet> centralJets;
119  for (unsigned int i = 0; i < inclusiveJets.size(); i++) {
120 
121  if (inclusiveJets[i].perp() > minFatjetPt_ && fabs(inclusiveJets[i].rapidity()) < maxFatjetAbsEta_) {
122  centralJets.push_back(inclusiveJets[i]);
123  }
124  }
125 
126  fastjet::HEPTopTaggerV2 & HEPTagger = *fjHEPTopTagger_;
127 
128  vector<fastjet::PseudoJet>::iterator jetIt = centralJets.begin(), centralJetsEnd = centralJets.end();
129  if ( verbose_ )cout<<"Loop over jets"<<endl;
130  for ( ; jetIt != centralJetsEnd; ++jetIt ) {
131 
132  if (verbose_) cout << "CMS FJ jet pt: " << (*jetIt).perp() << endl;
133 
134  fastjet::PseudoJet taggedJet;
135 
136  taggedJet = HEPTagger.result(*jetIt);
137 
138  if (taggedJet != 0){
139  fjJets_.push_back(taggedJet);
140  }
141  }
142 
143 }
std::auto_ptr< fastjet::HEPTopTaggerV2 > fjHEPTopTagger_
std::vector< fastjet::PseudoJet > fjJets_
std::vector< fastjet::PseudoJet > fjInputs_
ClusterSequencePtr fjClusterSeq_
T perp() const
Magnitude of transverse component.
AreaDefinitionPtr fjAreaDefinition_
boost::shared_ptr< fastjet::ClusterSequence > ClusterSequencePtr

Member Data Documentation

int cms::HTTTopJetProducer::filtN_
private

Definition at line 116 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::filtR_
private

Definition at line 115 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

std::auto_ptr<fastjet::HEPTopTaggerV2> cms::HTTTopJetProducer::fjHEPTopTagger_
private

Definition at line 98 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer(), produce(), and runAlgorithm().

double cms::HTTTopJetProducer::massRatioWidth_
private

Definition at line 131 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::maxCandMass_
private

Definition at line 129 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::maxFatjetAbsEta_
private

Definition at line 110 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer(), and runAlgorithm().

double cms::HTTTopJetProducer::maxM13Cut_
private

Definition at line 134 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::maxR_
private

Definition at line 136 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minCandMass_
private

Definition at line 128 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minCandPt_
private

Definition at line 108 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minFatjetPt_
private

Definition at line 106 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer(), and runAlgorithm().

double cms::HTTTopJetProducer::minM13Cut_
private

Definition at line 133 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minM23Cut_
private

Definition at line 132 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minR_
private

Definition at line 137 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::minSubjetPt_
private

Definition at line 107 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

int cms::HTTTopJetProducer::mode_
private

Definition at line 125 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::muCut_
private

Definition at line 113 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

bool cms::HTTTopJetProducer::optimalR_
private

Definition at line 103 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

bool cms::HTTTopJetProducer::qJets_
private

Definition at line 104 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer(), and produce().

bool cms::HTTTopJetProducer::rejectMinR_
private

Definition at line 139 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

double cms::HTTTopJetProducer::subjetMass_
private

Definition at line 112 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer().

bool cms::HTTTopJetProducer::verbose_
private

Definition at line 142 of file HTTTopJetProducer.h.

Referenced by HTTTopJetProducer(), and runAlgorithm().