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 "RooSUSYNPdf.h"
|
12 |
#include "RooAbsReal.h"
|
13 |
#include "RooAbsCategory.h"
|
14 |
#include "TMath.h"
|
15 |
|
16 |
ClassImp(RooSUSYNPdf)
|
17 |
|
18 |
RooSUSYNPdf::RooSUSYNPdf(const char *name, const char *title,
|
19 |
RooAbsReal& _inv,
|
20 |
RooAbsReal& _a,
|
21 |
RooAbsReal& _s,
|
22 |
RooAbsReal& _m0) :
|
23 |
RooAbsPdf(name,title),
|
24 |
inv("inv","inv",this,_inv),
|
25 |
a("a","a",this,_a),
|
26 |
s("s","s",this,_s),
|
27 |
m0("m0","m0",this,_m0)
|
28 |
{
|
29 |
}
|
30 |
|
31 |
|
32 |
RooSUSYNPdf::RooSUSYNPdf(const RooSUSYNPdf& other, const char* name) :
|
33 |
RooAbsPdf(other,name),
|
34 |
inv("inv",this,other.inv),
|
35 |
a("a",this,other.a),
|
36 |
s("s",this,other.s),
|
37 |
m0("m0",this,other.m0)
|
38 |
{
|
39 |
}
|
40 |
|
41 |
|
42 |
|
43 |
Double_t RooSUSYNPdf::evaluate() const
|
44 |
{
|
45 |
// ENTER EXPRESSION IN TERMS OF VARIABLE ARGUMENTS HERE
|
46 |
//quadratic
|
47 |
Double_t value =
|
48 |
(a+inv+1)*(-s)*TMath::Exp(-0.5*(a-inv)*(a-inv)/(s*s))/(sqrt(TMath::TwoPi()))
|
49 |
+(inv*inv+s*s+inv)*TMath::Erf((a-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 |
-inv*TMath::Erf((m0-inv)/(sqrt(2)*s))/2
|
53 |
+s*TMath::Exp(-0.5*(m0-inv)*(m0-inv)/(s*s))/(sqrt(TMath::TwoPi()));
|
54 |
//+inv*TMath::Erf((a-inv)/(sqrt(2)*s))/2
|
55 |
//-s*TMath::Exp(-0.5*(a-inv)*(a-inv)/(s*s))/(sqrt(TMath::TwoPi()));
|
56 |
|
57 |
if(value>0) return value;
|
58 |
else return 0.;
|
59 |
}
|
60 |
|
61 |
|
62 |
|