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 //
3 // File: hitfit/Constrained_Top.h
4 // Purpose: Do kinematic fitting for a ttbar -> ljets event.
5 // Created: Jul, 2000, sss, based on run 1 mass analysis code.
6 //
7 // CMSSW File : interface/Constrained_Top.h
8 // Original Author : Scott Stuart Snyder <snyder@bnl.gov> for D0
9 // Imported to CMSSW by Haryo Sumowidagdo <Suharyo.Sumowidagdo@cern.ch>
10 
11 
35 #ifndef HITFIT_CONSTRAINED_TOP_H
36 #define HITFIT_CONSTRAINED_TOP_H
37 
38 
41 #include <iosfwd>
42 
43 
44 namespace hitfit {
45 
46 
47 class Defaults;
48 class Lepjets_Event;
49 
58 //
59 // Purpose: Hold on to parameters for the Constrained_Top class.
60 //
61 // Parameters controlling the operation of the fitter:
62 // float bmass - The mass to which b jets should be fixed.
63 //
64 {
65 public:
66  // Constructor. Initialize from a Defaults object.
77  Constrained_Top_Args (const Defaults& defs);
78 
79  // Retrieve parameter values.
83  double bmass () const;
84 
85  // Arguments for subobjects.
90 
91  // Retrieve requirement for equal mass on both sides
95  bool equal_side() const;
96 
97 private:
98  // Hold on to parameter values.
99 
103  double _bmass;
104 
110 
116 
117 };
118 
119 
120 //*************************************************************************
121 
122 
129 //
130 // Purpose: Do kinematic fitting for a ttbar -> ljets event.
131 //
132 {
133 public:
134  // Constructor.
135  // LEPW_MASS, HADW_MASS, and TOP_MASS are the masses to which
136  // those objects should be constrained. To remove a constraint,
137  // set the mass to 0.
155  double lepw_mass,
156  double hadw_mass,
157  double top_mass);
158 
159  // Do a constrained fit.
193  double constrain (Lepjets_Event& ev,
194  double& mt,
195  double& sigmt,
196  Column_Vector& pullx,
197  Column_Vector& pully);
198 
199  // Dump out our state.
200  friend std::ostream& operator<< (std::ostream& s, const Constrained_Top& ct);
201 
202 
203 private:
204  // Parameter settings.
209 
210  // The guy that actually does the work.
215 };
216 
217 
218 } // namespace hitfit
219 
220 
221 #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:66
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:66
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
const Constrained_Top_Args _args
Define an interface for getting parameter settings.
Definition: Defaults.h:61
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.