RooFlatte Class Reference

#include <RooFlatte.hh>

List of all members.

Public Member Functions

 RooFlatte (const char *name, const char *title, RooAbsReal &_x, RooAbsReal &_mean, RooAbsReal &_g0, RooAbsReal &_m0a, RooAbsReal &_m0b, RooAbsReal &_g1, RooAbsReal &_m1a, RooAbsReal &_m1b)
 RooFlatte (const RooFlatte &other, const char *name=0)
virtual TObject * clone (const char *newname) const
virtual ~RooFlatte ()

Protected Member Functions

Double_t evaluate () const

Protected Attributes

RooRealProxy x
RooRealProxy mean
RooRealProxy g0
RooRealProxy m0a
RooRealProxy m0b
RooRealProxy g1
RooRealProxy m1a
RooRealProxy m1b


Detailed Description

Definition at line 9 of file RooFlatte.hh.


Constructor & Destructor Documentation

RooFlatte::RooFlatte ( const char *  name,
const char *  title,
RooAbsReal &  _x,
RooAbsReal &  _mean,
RooAbsReal &  _g0,
RooAbsReal &  _m0a,
RooAbsReal &  _m0b,
RooAbsReal &  _g1,
RooAbsReal &  _m1a,
RooAbsReal &  _m1b 
)

Referenced by clone().

RooFlatte::RooFlatte ( const RooFlatte other,
const char *  name = 0 
)

Definition at line 60 of file RooFlatte.cc.

00061                                        : 
00062   RooAbsPdf(other,name), 
00063   x("x",this,other.x), 
00064   mean("mean",this,other.mean),
00065   g0("g0",this,other.g0),
00066   m0a("m0a",this,other.m0a),
00067   m0b("m0b",this,other.m0b),
00068   g1("g1",this,other.g1),
00069   m1a("m1a",this,other.m1a),
00070   m1b("m1b",this,other.m1b)
00071 {
00072 }

virtual RooFlatte::~RooFlatte (  )  [inline, virtual]

Definition at line 22 of file RooFlatte.hh.

00022 { }


Member Function Documentation

virtual TObject* RooFlatte::clone ( const char *  newname  )  const [inline, virtual]

Definition at line 19 of file RooFlatte.hh.

References RooFlatte().

00019                                                     { 
00020     return new RooFlatte(*this,newname); 
00021   }

Double_t RooFlatte::evaluate (  )  const [protected]

Definition at line 75 of file RooFlatte.cc.

References g0, g1, m0a, m0b, m1a, m1b, mean, and x.

00076 {
00077   // calculate Flatte amplitude
00078 
00079   if (g0<0 || g1<0) {return(0);}
00080 
00081   Double_t s = x*x;
00082 
00083   // Energy, centre of mass p^2 of first channel
00084   Double_t E0a = 0.5 * (s + m0a*m0a - m0b*m0b) / x;
00085   Double_t qSq0 = E0a*E0a - m0a*m0a; 
00086 
00087   // Energy, centre of mass p^2 of second channel
00088   Double_t E1a = 0.5 * (s + m1a*m1a - m1b*m1b) / x;
00089   Double_t qSq1 = E1a*E1a - m1a*m1a; 
00090 
00091   RooComplex gamma0 = (qSq0 > 0) ? RooComplex(g0*sqrt(qSq0),0) : 
00092     RooComplex(0, g0*sqrt(-qSq0));
00093 
00094   RooComplex gamma1 = (qSq1 > 0) ? RooComplex(g1*sqrt(qSq1),0) : 
00095     RooComplex(0, g1*sqrt(-qSq1));
00096 
00097   RooComplex gamma = gamma0 + gamma1;
00098 
00099   RooComplex partB = RooComplex(0.0, 2*mean/x) * gamma;
00100   RooComplex partA(mean*mean - s, 0);
00101 
00102   RooComplex denom = partA - partB;
00103 
00104   //RooComplex T(mean*sqrt(g0*g1),0);
00105   RooComplex T(1,0);
00106   T = T / denom;
00107 
00108   return(T.abs2()); // Amplitude (arbitrary scale)
00109 
00110 }


Member Data Documentation

RooRealProxy RooFlatte::g0 [protected]

Definition at line 28 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::g1 [protected]

Definition at line 31 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::m0a [protected]

Definition at line 29 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::m0b [protected]

Definition at line 30 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::m1a [protected]

Definition at line 32 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::m1b [protected]

Definition at line 33 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::mean [protected]

Definition at line 27 of file RooFlatte.hh.

Referenced by evaluate().

RooRealProxy RooFlatte::x [protected]

Definition at line 26 of file RooFlatte.hh.

Referenced by evaluate().


The documentation for this class was generated from the following files:
Generated on 30 Oct 2013 for RooRarFit by  doxygen 1.4.7