1 |
buchmann |
1.1 |
/*****************************************************************************
|
2 |
|
|
* Project: RooFit *
|
3 |
|
|
* *
|
4 |
|
|
* This code was autogenerated by RooClassFactory *
|
5 |
|
|
*****************************************************************************/
|
6 |
|
|
|
7 |
|
|
// Your description goes here...
|
8 |
|
|
|
9 |
|
|
#include "Riostream.h"
|
10 |
|
|
|
11 |
|
|
#include "RooSUSYPdf.h"
|
12 |
|
|
#include "RooAbsReal.h"
|
13 |
|
|
#include "RooAbsCategory.h"
|
14 |
|
|
#include "TMath.h"
|
15 |
|
|
|
16 |
|
|
ClassImp(RooSUSYPdf)
|
17 |
|
|
|
18 |
|
|
RooSUSYPdf::RooSUSYPdf(const char *name, const char *title,
|
19 |
|
|
RooAbsReal& _inv,
|
20 |
|
|
RooAbsReal& _c,
|
21 |
|
|
RooAbsReal& _s,
|
22 |
|
|
RooAbsReal& _m0) :
|
23 |
|
|
RooAbsPdf(name,title),
|
24 |
|
|
inv("inv","inv",this,_inv),
|
25 |
|
|
c("c","c",this,_c),
|
26 |
|
|
s("s","s",this,_s),
|
27 |
|
|
m0("m0","m0",this,_m0)
|
28 |
|
|
{
|
29 |
|
|
}
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
RooSUSYPdf::RooSUSYPdf(const RooSUSYPdf& other, const char* name) :
|
33 |
|
|
RooAbsPdf(other,name),
|
34 |
|
|
inv("inv",this,other.inv),
|
35 |
|
|
c("c",this,other.c),
|
36 |
|
|
s("s",this,other.s),
|
37 |
|
|
m0("m0",this,other.m0)
|
38 |
|
|
{
|
39 |
|
|
}
|
40 |
|
|
|
41 |
|
|
|
42 |
|
|
|
43 |
|
|
Double_t RooSUSYPdf::evaluate() const
|
44 |
|
|
{
|
45 |
|
|
// ENTER EXPRESSION IN TERMS OF VARIABLE ARGUMENTS HERE
|
46 |
|
|
//quadratic
|
47 |
|
|
Double_t value = c*(
|
48 |
|
|
(m0+inv)*(-s)*TMath::Exp(-0.5*(m0-inv)*(m0-inv)/(s*s))/(sqrt(TMath::TwoPi()))
|
49 |
|
|
+(inv*inv+s*s)*TMath::Erf((m0-inv)/(sqrt(2)*s))/2
|
50 |
|
|
+inv*s*TMath::Exp(-0.5*inv*inv/(s*s))/(sqrt(TMath::TwoPi()))
|
51 |
|
|
+(inv*inv+s*s)*TMath::Erf(sqrt(2)*(inv)/(2*s))/2);
|
52 |
|
|
|
53 |
|
|
if(value>0) return value;
|
54 |
|
|
else return 0.;
|
55 |
|
|
//old
|
56 |
|
|
//return -c*((m0+inv)*s*TMath::Exp(-0.5*TMath::Power(c, -2)*TMath::Power(inv-m0, 2))/(sqrt(TMath::TwoPi()))+(inv*inv+s*s)*TMath::Erf(sqrt(2)*(inv-m0)/(2*s))/2)+c*(inv*s*TMath::Exp(-0.5*TMath::Power(s, -2)*TMath::Power(inv, 2))/(sqrt(TMath::TwoPi()))+(inv*inv+s*s)*TMath::Erf(sqrt(2)*(inv)/(2*s))/2);
|
57 |
|
|
}
|
58 |
|
|
|
59 |
|
|
|
60 |
|
|
|