CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Constrained_Top.h
Go to the documentation of this file.
1 //
2 // $Id: Constrained_Top.h,v 1.1 2011/05/26 09:46:53 mseidel Exp $
3 //
4 // File: hitfit/Constrained_Top.h
5 // Purpose: Do kinematic fitting for a ttbar -> ljets event.
6 // Created: Jul, 2000, sss, based on run 1 mass analysis code.
7 //
8 // CMSSW File : interface/Constrained_Top.h
9 // Original Author : Scott Stuart Snyder <snyder@bnl.gov> for D0
10 // Imported to CMSSW by Haryo Sumowidagdo <Suharyo.Sumowidagdo@cern.ch>
11 
12 
36 #ifndef HITFIT_CONSTRAINED_TOP_H
37 #define HITFIT_CONSTRAINED_TOP_H
38 
39 
42 #include <iosfwd>
43 
44 
45 namespace hitfit {
46 
47 
48 class Defaults;
49 class Lepjets_Event;
50 
59 //
60 // Purpose: Hold on to parameters for the Constrained_Top class.
61 //
62 // Parameters controlling the operation of the fitter:
63 // float bmass - The mass to which b jets should be fixed.
64 //
65 {
66 public:
67  // Constructor. Initialize from a Defaults object.
78  Constrained_Top_Args (const Defaults& defs);
79 
80  // Retrieve parameter values.
84  double bmass () const;
85 
86  // Arguments for subobjects.
91 
92  // Retrieve requirement for equal mass on both sides
96  bool equal_side() const;
97 
98 private:
99  // Hold on to parameter values.
100 
104  double _bmass;
105 
111 
117 
118 };
119 
120 
121 //*************************************************************************
122 
123 
130 //
131 // Purpose: Do kinematic fitting for a ttbar -> ljets event.
132 //
133 {
134 public:
135  // Constructor.
136  // LEPW_MASS, HADW_MASS, and TOP_MASS are the masses to which
137  // those objects should be constrained. To remove a constraint,
138  // set the mass to 0.
156  double lepw_mass,
157  double hadw_mass,
158  double top_mass);
159 
160  // Do a constrained fit.
194  double constrain (Lepjets_Event& ev,
195  double& mt,
196  double& sigmt,
197  Column_Vector& pullx,
198  Column_Vector& pully);
199 
200  // Dump out our state.
201  friend std::ostream& operator<< (std::ostream& s, const Constrained_Top& ct);
202 
203 
204 private:
205  // Parameter settings.
210 
211  // The guy that actually does the work.
216 };
217 
218 
219 } // namespace hitfit
220 
221 
222 #endif // not HITFIT_CONSTRAINED_TOP_H
Hold on to parameters for the Constrained_Top class.
Constrained_Top(const Constrained_Top_Args &args, double lepw_mass, double hadw_mass, double top_mass)
Constructor, create an instance of the Constrained_Top object from the arguments object and the mass ...
const Fourvec_Constrainer_Args & fourvec_constrainer_args() const
friend std::ostream & operator<<(std::ostream &s, const Constrained_Top &ct)
Output stream operator, print the content of this Constrained_Top object to an output stream...
Do a constrained kinematic fitting for a event.
CLHEP::HepVector Column_Vector
Definition: matutil.h:67
Fourvec_Constrainer _constrainer
Define matrix types for the HitFit package, and supply a few additional operations.
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 constrain(Lepjets_Event &ev, double &mt, double &sigmt, Column_Vector &pullx, Column_Vector &pully)
Do a constrained fit of events. Returns the top mass and its error in mt and sigmt, and the pull quantities in pullx and pully. Returns the , this will be negative if the fit failed to converge.
Constrained_Top_Args(const Defaults &defs)
Fourvec_Constrainer_Args _fourvec_constrainer_args
dictionary args
const Constrained_Top_Args _args
Define an interface for getting parameter settings.
Definition: Defaults.h:62
Do a kinematic fit for a set of four-vectors, given a set of mass constraints.
Do a kinematic fit for a set of four-momenta, given a set of mass constraints.
Hold on to parameters for the Fourvec_Constrainer class.