CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
funct::BreitWigner Struct Reference

#include <BreitWigner.h>

Public Member Functions

 BreitWigner (const Parameter &m, const Parameter &g)
 
 BreitWigner (boost::shared_ptr< double > m, boost::shared_ptr< double > g)
 
 BreitWigner (double m, double g)
 
double operator() (double x) const
 

Public Attributes

boost::shared_ptr< double > mass
 
boost::shared_ptr< double > width
 

Detailed Description

Definition at line 10 of file BreitWigner.h.

Constructor & Destructor Documentation

funct::BreitWigner::BreitWigner ( const Parameter m,
const Parameter g 
)
inline

Definition at line 11 of file BreitWigner.h.

11  :
12  mass(m.ptr()), width(g.ptr()) { }
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 > width
Definition: BreitWigner.h:30
boost::shared_ptr< double > mass
Definition: BreitWigner.h:30
funct::BreitWigner::BreitWigner ( boost::shared_ptr< double >  m,
boost::shared_ptr< double >  g 
)
inline

Definition at line 13 of file BreitWigner.h.

13  :
14  mass(m), width(g) {}
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 > width
Definition: BreitWigner.h:30
boost::shared_ptr< double > mass
Definition: BreitWigner.h:30
funct::BreitWigner::BreitWigner ( double  m,
double  g 
)
inline

Definition at line 15 of file BreitWigner.h.

15  :
16  mass(new double(m)), width(new double(g)) {}
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 > width
Definition: BreitWigner.h:30
boost::shared_ptr< double > mass
Definition: BreitWigner.h:30

Member Function Documentation

double funct::BreitWigner::operator() ( double  x) const
inline

Definition at line 17 of file BreitWigner.h.

References diffTwoXMLs::g2, mass, alignCSCRings::s, funct::twoOverPi, width, and vdt::x.

17  {
18  double m2 = *mass * (*mass);
19  double g2 = *width * (*width);
20  double g2OverM2 = g2/m2;
21  double s = x*x;
22  double deltaS = s - m2;
23  double lineShape = 0;
24  if (fabs(deltaS/m2)<16) {
25  double prop = deltaS*deltaS + s*s*g2OverM2;
26  lineShape = twoOverPi * (*width) * s/prop;
27  }
28  return lineShape;
29  }
const double twoOverPi
Definition: BreitWigner.h:8
boost::shared_ptr< double > width
Definition: BreitWigner.h:30
boost::shared_ptr< double > mass
Definition: BreitWigner.h:30
x
Definition: VDTMath.h:216

Member Data Documentation

boost::shared_ptr<double> funct::BreitWigner::mass

Definition at line 30 of file BreitWigner.h.

Referenced by operator()().

boost::shared_ptr<double> funct::BreitWigner::width