CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
gentop.h
Go to the documentation of this file.
1 //
2 // $Id: gentop.h,v 1.1 2011/05/26 09:46:53 mseidel Exp $
3 //
4 // File: hitfit/gentop.h
5 // Purpose: Toy ttbar event generator for testing.
6 // Created: Jul, 2000, sss.
7 //
8 // This is a very simple event generator for ttbar events, to allow some
9 // basic tests of the mass fitting code. We generate random ttbars,
10 // with kinematics pulled out of a hat, and then decay them into l+jets
11 // events. No radiation or other such luxuries, and, as mentioned, any
12 // kinematic distribuions will certainly be wrong. But the generated
13 // events should satisfy the l+jets mass constraints.
14 //
15 // CMSSW File : interface/gentop.h
16 // Original Author : Scott Stuart Snyder <snyder@bnl.gov> for D0
17 // Imported to CMSSW by Haryo Sumowidagdo <Suharyo.Sumowidagdo@cern.ch>
18 //
19 
20 
56 #include <string>
57 #include <iosfwd>
58 
59 #include "CLHEP/Random/Random.h"
60 
61 
62 namespace hitfit {
63 
64 
65 class Defaults;
66 class Lepjets_Event;
67 
68 
75 //
76 // Hold on to parameters for the toy event generator.
77 // float mt - Generated top mass.
78 // float sigma_mt - Width of top mass distribution.
79 //
80 // float mh - Generated Higgs mass.
81 // float sigma_mh - Width of Higgs mass distribution.
82 //
83 // float mw - Generated W mass.
84 // float sigma_mw - Width of W mass distribution.
85 //
86 // float mb - Generated b mass.
87 // float sigma_mb - Width of b mass distribution.
88 //
89 // float t_pt_mean - Mean pt of the generated top quarks.
90 // (It will be drawn from an exponential distribution.)
91 // float recoil_pt_mean-Mean pt of ttbar system.
92 // (It will be drawn from an exponential distribution.)
93 // float boost_sigma - Width of z-boost of ttbar system.
94 // float m_boost - Mass of z-boost of ttbar system.
95 // float sxv_tageff - Assumed efficiency of SVX b-tag.
96 // bool smear - If true, smear the event.
97 // bool smear_dir - If false, smear only energies, not directions.
98 // bool muon - If false, decay leptonic ts into electrons.
99 // Otherwise, decay into muons.
100 // string ele_res_str - Electron resolution, for Vector_Resolution.
101 // string muo_res_str - Muon resolution, for Vector_Resolution.
102 // string jet_res_str - Jet resolution, for Vector_Resolution.
103 // string kt_res_str - Kt resolution, for Resolution.
104 //
105 {
106 public:
107  // Constructor. Initialize from a Defaults object.
136  Gentop_Args (const Defaults& defs);
137 
138  // Retrieve parameter values.
139 
143  double t_pt_mean () const;
144 
148  double mt () const;
149 
153  double sigma_mt () const;
154 
158  double mh () const;
159 
163  double sigma_mh () const;
164 
168  double recoil_pt_mean () const;
169 
173  double boost_sigma () const;
174 
178  double m_boost () const;
179 
183  double mb () const;
184 
188  double sigma_mb () const;
189 
193  double mw () const;
194 
198  double sigma_mw () const;
199 
203  double svx_tageff () const;
204 
208  bool smear () const;
209 
213  bool smear_dir () const;
214 
218  bool muon () const;
219 
223  std::string ele_res_str () const;
224 
228  std::string muo_res_str () const;
229 
233  std::string jet_res_str () const;
234 
238  std::string kt_res_str () const;
239 
240 private:
241  // Hold on to parameter values.
242 
247  double _t_pt_mean;
248 
252  double _mt;
253 
257  double _sigma_mt;
258 
262  double _mh;
263 
267  double _sigma_mh;
268 
274 
278  double _boost_sigma;
279 
283  double _m_boost;
284 
288  double _mb;
289 
293  double _sigma_mb;
294 
298  double _mw;
299 
303  double _sigma_mw;
304 
309  double _svx_tageff;
310 
315  bool _smear;
316 
322 
327  bool _muon;
328 
332  std::string _ele_res_str;
333 
337  std::string _muo_res_str;
338 
342  std::string _jet_res_str;
343 
348  std::string _kt_res_str;
349 };
350 
351 
352 // Generate a ttbar -> ljets event.
361  CLHEP::HepRandomEngine& engine);
362 
363 // Generate a ttH -> ljets+bb event.
373  CLHEP::HepRandomEngine& engine);
374 
375 
376 } // namespace hitfit
bool muon() const
Return the value of muon parameter.
Definition: gentop.cc:182
std::string muo_res_str() const
Return the value of muon_res_str parameter.
Definition: gentop.cc:272
std::string _jet_res_str
Definition: gentop.h:342
double _sigma_mt
Definition: gentop.h:257
double boost_sigma() const
Return the value of boost_sigma parameter.
Definition: gentop.cc:202
double mh() const
Return the value of mh parameter.
Definition: gentop.cc:142
Gentop_Args(const Defaults &defs)
Constructor, initialize an instance of Gentop_Args from an instance of Defaults object.
Definition: gentop.cc:71
double _t_pt_mean
Definition: gentop.h:247
double mw() const
Return the value of mw parameter.
Definition: gentop.cc:242
Lepjets_Event gentth(const Gentop_Args &args, CLHEP::HepRandomEngine &engine)
Generate a event.
Definition: gentop.cc:650
double _sigma_mh
Definition: gentop.h:267
std::string jet_res_str() const
Return the value of jet_res_str parameter.
Definition: gentop.cc:282
double _svx_tageff
Definition: gentop.h:309
std::string _kt_res_str
Definition: gentop.h:348
double sigma_mt() const
Return the value of sigma_mt parameter.
Definition: gentop.cc:122
double sigma_mh() const
Return the value of sigma_mh parameter.
Definition: gentop.cc:152
double _sigma_mb
Definition: gentop.h:293
double _recoil_pt_mean
Definition: gentop.h:273
double sigma_mb() const
Return the value of sigma_mb parameter.
Definition: gentop.cc:232
std::string kt_res_str() const
Return the value of kt_res_str parameter.
Definition: gentop.cc:292
double recoil_pt_mean() const
Return the value of recoil_pt_mean parameter.
Definition: gentop.cc:192
Represent a simple event consisting of lepton(s) and jet(s). An instance of this class holds a list o...
Definition: Lepjets_Event.h:67
double mb() const
Return the value of mb parameter.
Definition: gentop.cc:222
Lepjets_Event gentop(const Gentop_Args &args, CLHEP::HepRandomEngine &engine)
Generate a event.
Definition: gentop.cc:560
std::string _ele_res_str
Definition: gentop.h:332
double sigma_mw() const
Return the value of sigma_mw parameter.
Definition: gentop.cc:252
double _sigma_mw
Definition: gentop.h:303
bool smear_dir() const
Return the value of smear_dir parameter.
Definition: gentop.cc:172
Hold on to parameters for the toy event generator.
Definition: gentop.h:74
double mt() const
Return the value of mt parameter.
Definition: gentop.cc:112
double m_boost() const
Return the value of m_boost parameter.
Definition: gentop.cc:212
std::string _muo_res_str
Definition: gentop.h:337
std::string ele_res_str() const
Return the value of ele_res_str parameter.
Definition: gentop.cc:262
dictionary args
Define an interface for getting parameter settings.
Definition: Defaults.h:62
double _boost_sigma
Definition: gentop.h:278
bool smear() const
Return the value of smear parameter.
Definition: gentop.cc:162
double svx_tageff() const
Return the value of svx_tageff parameter.
Definition: gentop.cc:132
double t_pt_mean() const
Return the value of t_pt_mean parameter.
Definition: gentop.cc:102