CMS 3D CMS Logo

function::ZMuMuBackNorm Class Reference

#include <ElectroWeakAnalysis/ZMuMu/interface/ZMuMuBackNorm.h>

List of all members.

Public Types

enum  { arguments = 2 }
enum  { parameters = 3 }

Public Member Functions

double operator() (const int x_min, const int x_max) const
void setParameters (double l, double a, double b)
 ZMuMuBackNorm (const Exponential &expo, const Polynomial< 2 > &pol)
 ZMuMuBackNorm (double l, double a, double b)
 ZMuMuBackNorm (boost::shared_ptr< double > l, boost::shared_ptr< double > a, boost::shared_ptr< double > b)

Public Attributes

boost::shared_ptr< double > a1
boost::shared_ptr< double > a2
boost::shared_ptr< double > lambda

Private Attributes

Exponential expo_
Polynomial< 2 > pol_


Detailed Description

Definition at line 10 of file ZMuMuBackNorm.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
arguments 

Definition at line 12 of file ZMuMuBackNorm.h.

00012 { arguments = 2 };

anonymous enum

Enumerator:
parameters 

Definition at line 13 of file ZMuMuBackNorm.h.

00013 { parameters = 3 };


Constructor & Destructor Documentation

function::ZMuMuBackNorm::ZMuMuBackNorm ( boost::shared_ptr< double >  l,
boost::shared_ptr< double >  a,
boost::shared_ptr< double >  b 
) [inline]

Definition at line 14 of file ZMuMuBackNorm.h.

References expo_, lambda, and pol_.

00014                                                                                                   :
00015       lambda(l), a1(a), a2(b), 
00016       expo_(-(*l)), 
00017       pol_(-pow(*l, 2)- (*l) * (*a) - 2 * (*b), -pow(*l, 2) * (*a) - 2 * (*l) * (*b), -pow(*l, 2) * (*b)) {}
    ZMuMuBackNorm(double l, double a, double b): 

function::ZMuMuBackNorm::ZMuMuBackNorm ( double  l,
double  a,
double  b 
) [inline]

Definition at line 18 of file ZMuMuBackNorm.h.

References expo_, lambda, and pol_.

00018                                                : 
00019       lambda(new double(l)), a1(new double(a)), a2(new double(b)), 
00020       expo_(-l), pol_(-pow(l, 2)-l*a-2*b, -pow(l, 2)*a-2*l*b, -pow(l, 2)*b) {}

function::ZMuMuBackNorm::ZMuMuBackNorm ( const Exponential &  expo,
const Polynomial< 2 > &  pol 
) [inline]

Definition at line 21 of file ZMuMuBackNorm.h.

References expo_, and pol_.

00021 : expo_(expo), pol_(pol) { }


Member Function Documentation

double function::ZMuMuBackNorm::operator() ( const int  x_min,
const int  x_max 
) const [inline]

Definition at line 22 of file ZMuMuBackNorm.h.

References expo_, function::l, and pol_.

00022                                                               {
00023       double l = - (*(expo_.lambda)); //the exponential is constructed as negative!!
00024       double l3inv = 1/(l*l*l);
00025       double N1 = expo_(x_max)*l3inv * pol_(x_max);
00026       double N2 = expo_(x_min)*l3inv * pol_(x_min);
00027       return 1/(N1 - N2);
00028     }

void function::ZMuMuBackNorm::setParameters ( double  l,
double  a,
double  b 
) [inline]

Definition at line 29 of file ZMuMuBackNorm.h.

References expo_, l2, pol_, and setParameters().

Referenced by function::ZMuMuNormalBack::setParameters(), and setParameters().

00029                                                      { 
00030       expo_.setParameters(-l);
00031       double l2 = l*l;
00032       pol_.setParameters(-l2-l*a-2*b, -l2*a-2*l*b, -l2*b);
00033     }


Member Data Documentation

boost::shared_ptr<double> function::ZMuMuBackNorm::a1

Definition at line 34 of file ZMuMuBackNorm.h.

boost::shared_ptr<double> function::ZMuMuBackNorm::a2

Definition at line 34 of file ZMuMuBackNorm.h.

Exponential function::ZMuMuBackNorm::expo_ [private]

Definition at line 36 of file ZMuMuBackNorm.h.

Referenced by operator()(), setParameters(), and ZMuMuBackNorm().

boost::shared_ptr<double> function::ZMuMuBackNorm::lambda

Definition at line 34 of file ZMuMuBackNorm.h.

Referenced by ZMuMuBackNorm().

Polynomial<2> function::ZMuMuBackNorm::pol_ [private]

Definition at line 37 of file ZMuMuBackNorm.h.

Referenced by operator()(), setParameters(), and ZMuMuBackNorm().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:47:03 2009 for CMSSW by  doxygen 1.5.4