CMS 3D CMS Logo

ZLineShape.h
Go to the documentation of this file.
1 #ifndef PhysicsTools_Utilities_ZLineShape_h
2 #define PhysicsTools_Utilities_ZLineShape_h
7 #include <boost/shared_ptr.hpp>
8 
9 namespace funct {
10  class ZLineShape {
11  public:
12  ZLineShape(const Parameter& m, const Parameter& g,
13  const Parameter& Ng, const Parameter& Ni):
14  Ngamma(Ng.ptr()), Nint(Ni.ptr()),
15  bw_(m, g), gp_(), gzi_(m, g) {}
16  ZLineShape(boost::shared_ptr<double> m, boost::shared_ptr<double> g,
17  boost::shared_ptr<double> Ng, boost::shared_ptr<double> Ni):
18  Ngamma(Ng), Nint(Ni),
19  bw_(m, g), gp_(), gzi_(m, g) {}
20  double operator()(double x) const {
21  return (1.0 - *Nint - *Ngamma) * bw_(x) + *Ngamma * gp_(x) + *Nint * gzi_(x);
22  }
23  boost::shared_ptr<double> Ngamma, Nint;
24  private:
28  };
29 
30 }
31 
32 #endif
33 
ZLineShape(boost::shared_ptr< double > m, boost::shared_ptr< double > g, boost::shared_ptr< double > Ng, boost::shared_ptr< double > Ni)
Definition: ZLineShape.h:16
GammaPropagator gp_
Definition: ZLineShape.h:26
Definition: Abs.h:5
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
boost::shared_ptr< double > Nint
Definition: ZLineShape.h:23
GammaZInterference gzi_
Definition: ZLineShape.h:27
BreitWigner bw_
Definition: ZLineShape.h:25
ZLineShape(const Parameter &m, const Parameter &g, const Parameter &Ng, const Parameter &Ni)
Definition: ZLineShape.h:12
double operator()(double x) const
Definition: ZLineShape.h:20
boost::shared_ptr< double > Ngamma
Definition: ZLineShape.h:23