EvtBtoXsgammaFlatEnergy Class Reference

#include <EvtBtoXsgammaFlatEnergy.hh>

Inheritance diagram for EvtBtoXsgammaFlatEnergy:

EvtBtoXsgammaAbsModel List of all members.

Public Member Functions

 EvtBtoXsgammaFlatEnergy ()
virtual ~EvtBtoXsgammaFlatEnergy ()
void init (int, double *)
double GetMass (int code)

Private Attributes

double _eMin
double _eMax
double _mB0
double _eRange

Detailed Description

Definition at line 27 of file EvtBtoXsgammaFlatEnergy.hh.


Constructor & Destructor Documentation

EvtBtoXsgammaFlatEnergy::EvtBtoXsgammaFlatEnergy (  )  [inline]

Definition at line 31 of file EvtBtoXsgammaFlatEnergy.hh.

00031 {}

EvtBtoXsgammaFlatEnergy::~EvtBtoXsgammaFlatEnergy (  )  [virtual]

Definition at line 30 of file EvtBtoXsgammaFlatEnergy.cc.

00030                                                  {
00031 }


Member Function Documentation

double EvtBtoXsgammaFlatEnergy::GetMass ( int  code  )  [virtual]

Implements EvtBtoXsgammaAbsModel.

Definition at line 64 of file EvtBtoXsgammaFlatEnergy.cc.

References _eMin, _eRange, _mB0, and EvtRandom::Flat().

00064                                                    {
00065   
00066   double eGamma = EvtRandom::Flat(_eRange)+_eMin;
00067   double mH = sqrt(pow(_mB0,2)-2.0*_mB0*eGamma); 
00068   return mH;
00069 }

void EvtBtoXsgammaFlatEnergy::init ( int  ,
double *   
) [virtual]

Reimplemented from EvtBtoXsgammaAbsModel.

Definition at line 33 of file EvtBtoXsgammaFlatEnergy.cc.

References _eMax, _eMin, _eRange, _mB0, calibUtil::ERROR, mPi, and report().

00033                                                         {
00034 
00035   if ((nArg) > 3 || (nArg > 1 && nArg <3)){
00036   
00037   report(ERROR,"EvtGen") << "EvtBtoXsgamma generator model "
00038                          << "EvtBtoXsgammaFlatEnergy expected " 
00039                          << "either 1(default config) or two arguments but found: "<<nArg<<endl;
00040   report(ERROR,"EvtGen") << "Will terminate execution!"<<endl;
00041     ::abort();  
00042   }
00043   _mB0=5.2794;  
00044   double mPi = 0.140;
00045   double mK = 0.494;
00046   if(nArg == 1){
00047     _eMin = 1.7;
00048     //Invariant mass of Xsd must be greater the m_pi+m_K leads to 
00049     //Egamma < (m_B**2-(m_pi+m_k)**2)/(2m_B)
00050     _eMax = (pow(_mB0,2)-pow(mPi+mK,2))/(2.0*_mB0); 
00051   }else{
00052     _eMin=args[1];
00053     _eMax=args[2];
00054   }
00055   if (_eMax>(pow(_mB0,2)-pow(mPi+mK,2))/(2.0*_mB0)){
00056     report(ERROR,"EvtGen") << "Emax greater than Kinematic limit" << endl;
00057     report(ERROR,"EvtGen") << "Reset to the kinematic limit" << endl;
00058     report(ERROR,"EvtGen") << "(m_B**2-(m_pi+m_k)**2)/(2m_B)" << endl;
00059     _eMax = (pow(_mB0,2)-pow(mPi+mK,2))/(2.0*_mB0);
00060   }
00061   _eRange=_eMax-_eMin;
00062 }


Member Data Documentation

double EvtBtoXsgammaFlatEnergy::_eMax [private]

Definition at line 42 of file EvtBtoXsgammaFlatEnergy.hh.

Referenced by init().

double EvtBtoXsgammaFlatEnergy::_eMin [private]

Definition at line 41 of file EvtBtoXsgammaFlatEnergy.hh.

Referenced by GetMass(), and init().

double EvtBtoXsgammaFlatEnergy::_eRange [private]

Definition at line 45 of file EvtBtoXsgammaFlatEnergy.hh.

Referenced by GetMass(), and init().

double EvtBtoXsgammaFlatEnergy::_mB0 [private]

Definition at line 44 of file EvtBtoXsgammaFlatEnergy.hh.

Referenced by GetMass(), and init().


Generated on Tue Nov 29 23:18:55 2016 for BOSS_7.0.2 by  doxygen 1.4.7