MINT2
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RooHORNSdini Class Reference

#include <RooHORNSdini.h>

Inheritance diagram for RooHORNSdini:

Public Member Functions

 RooHORNSdini (const char *name, const char *title, RooAbsReal &_m, RooAbsReal &_a, RooAbsReal &_b, RooAbsReal &_csi, RooAbsReal &_shift, RooAbsReal &_sigma, RooAbsReal &_ratio_sigma, RooAbsReal &_fraction_sigma)
 
 RooHORNSdini (const RooHORNSdini &other, const char *name=0)
 
virtual TObject * clone (const char *newname) const
 
virtual ~ RooHORNSdini ()
 

Protected Member Functions

Double_t evaluate () const
 

Protected Attributes

RooRealProxy m
 
RooRealProxy a
 
RooRealProxy b
 
RooRealProxy csi
 
RooRealProxy shift
 
RooRealProxy sigma
 
RooRealProxy ratio_sigma
 
RooRealProxy fraction_sigma
 

Detailed Description

Definition at line 26 of file RooHORNSdini.h.

Constructor & Destructor Documentation

◆ RooHORNSdini() [1/2]

RooHORNSdini::RooHORNSdini ( const char *  name,
const char *  title,
RooAbsReal &  _m,
RooAbsReal &  _a,
RooAbsReal &  _b,
RooAbsReal &  _csi,
RooAbsReal &  _shift,
RooAbsReal &  _sigma,
RooAbsReal &  _ratio_sigma,
RooAbsReal &  _fraction_sigma 
)

Definition at line 13 of file RooHORNSdini.cpp.

14  :
15 
16 
17  RooAbsPdf(name, title),
18  m("m", "Dependent", this, _m),
19  a("a", "a", this, _a),
20  b("b", "b", this, _b),
21  csi("csi", "csi", this, _csi),
22  shift("shift", "shift", this, _shift),
23  sigma("sigma", "sigma", this, _sigma),
24  ratio_sigma("ratio_sigma", "ratio_sigma", this, _ratio_sigma),
25  fraction_sigma("fraction_sigma", "fraction_sigma", this, _fraction_sigma)
26 {
27 }
RooRealProxy sigma
Definition: RooHORNSdini.h:43
RooRealProxy fraction_sigma
Definition: RooHORNSdini.h:45
RooRealProxy b
Definition: RooHORNSdini.h:40
RooRealProxy a
Definition: RooHORNSdini.h:39
RooRealProxy csi
Definition: RooHORNSdini.h:41
RooRealProxy m
Definition: RooHORNSdini.h:38
RooRealProxy shift
Definition: RooHORNSdini.h:42
RooRealProxy ratio_sigma
Definition: RooHORNSdini.h:44

◆ RooHORNSdini() [2/2]

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

Definition at line 30 of file RooHORNSdini.cpp.

30  :
31  RooAbsPdf(other, name), m("m", this, other.m), a("a", this, other.a), b("b", this, other.b), csi("csi", this, other.csi), shift("shift", this, other.shift), sigma("sigma", this, other.sigma), ratio_sigma("ratio_sigma", this, other.ratio_sigma), fraction_sigma("fraction_sigma", this, other.fraction_sigma)
32 {
33 }
RooRealProxy sigma
Definition: RooHORNSdini.h:43
RooRealProxy fraction_sigma
Definition: RooHORNSdini.h:45
RooRealProxy b
Definition: RooHORNSdini.h:40
RooRealProxy a
Definition: RooHORNSdini.h:39
RooRealProxy csi
Definition: RooHORNSdini.h:41
RooRealProxy m
Definition: RooHORNSdini.h:38
RooRealProxy shift
Definition: RooHORNSdini.h:42
RooRealProxy ratio_sigma
Definition: RooHORNSdini.h:44

◆ ~ RooHORNSdini()

virtual RooHORNSdini::~ RooHORNSdini ( )
inlinevirtual

Definition at line 34 of file RooHORNSdini.h.

34 {}

Member Function Documentation

◆ clone()

virtual TObject* RooHORNSdini::clone ( const char *  newname) const
inlinevirtual

Definition at line 33 of file RooHORNSdini.h.

33 { return new RooHORNSdini(*this,newname); }
RooHORNSdini(const char *name, const char *title, RooAbsReal &_m, RooAbsReal &_a, RooAbsReal &_b, RooAbsReal &_csi, RooAbsReal &_shift, RooAbsReal &_sigma, RooAbsReal &_ratio_sigma, RooAbsReal &_fraction_sigma)

◆ evaluate()

Double_t RooHORNSdini::evaluate ( ) const
protected

Definition at line 36 of file RooHORNSdini.cpp.

37 {
38 
40  double a_new = a;
41  double b_new = b;
42  double B_NEW = (a_new+b_new)/2;
43  double sigma2 = sigma * ratio_sigma;
45 
47  //mult = ((1-csi)/(b_new-a_new)*m + (b_new*csi - a_new)/(b_new-a_new));
49 
50 
51 
53  double firstG1 = ((2*(a_new-2*B_NEW+(m-shift))*sigma)/exp((a_new-(m-shift))*(a_new-(m-shift))/(2*sigma*sigma)) - (2*(b_new-2*B_NEW+(m-shift))*sigma)/exp((b_new-(m-shift))*(b_new-(m-shift))/(2*sigma*sigma))+ sqrt(2*TMath::Pi())*((B_NEW-(m-shift))*(B_NEW-(m-shift)) + sigma*sigma)*TMath::Erf((-a_new+(m-shift))/(sqrt(2)*sigma)) - sqrt(2*TMath::Pi())*((B_NEW-(m-shift))*(B_NEW-(m-shift)) + sigma*sigma) * TMath::Erf((-b_new+(m-shift))/(sqrt(2)*sigma)))/(2*sqrt(2*TMath::Pi()));
54  double secondG1 = (((2*sigma*(a_new*a_new + B_NEW*B_NEW + a_new*(m-shift) + (m-shift)*(m-shift) - 2*B_NEW*(a_new+(m-shift)) + 2*(sigma*sigma)))/exp((a_new-(m-shift))*(a_new-(m-shift))/(2*(sigma*sigma))) - (2*sigma*(b_new*b_new + B_NEW*B_NEW + b_new*(m-shift) + (m-shift)*(m-shift) - 2*B_NEW*(b_new + (m-shift)) + 2*(sigma*sigma)))/exp((b_new - (m-shift))*(b_new - (m-shift))/(2*(sigma*sigma))) - sqrt(2*TMath::Pi())*(-((B_NEW - (m-shift))*(B_NEW - (m-shift)) *(m-shift)) + (2*B_NEW - 3*(m-shift))*(sigma*sigma))*TMath::Erf((-a_new + (m-shift))/(sqrt(2)*sigma)) + sqrt(2*TMath::Pi())* (-((B_NEW - (m-shift))*(B_NEW - (m-shift))*(m-shift)) + (2*B_NEW - 3*(m-shift))*(sigma*sigma)) *TMath::Erf((-b_new + (m-shift))/(sqrt(2)*sigma)))/(2 *sqrt(2*TMath::Pi())));
55  double CURVEG1 = fabs((1-csi)*secondG1 + (b_new*csi - a_new)*firstG1);
57 
58 
59 
61  double firstG2 = ((2*(a_new-2*B_NEW+(m-shift))*sigma2)/exp((a_new-(m-shift))*(a_new-(m-shift))/(2*sigma2*sigma2)) - (2*(b_new-2*B_NEW+(m-shift))*sigma2)/exp((b_new-(m-shift))*(b_new-(m-shift))/(2*sigma2*sigma2))+ sqrt(2*TMath::Pi())*((B_NEW-(m-shift))*(B_NEW-(m-shift)) + sigma2*sigma2)*TMath::Erf((-a_new+(m-shift))/(sqrt(2)*sigma2)) - sqrt(2*TMath::Pi())*((B_NEW-(m-shift))*(B_NEW-(m-shift)) + sigma2*sigma2) * TMath::Erf((-b_new+(m-shift))/(sqrt(2)*sigma2)))/(2*sqrt(2*TMath::Pi()));
62  double secondG2 = (((2*sigma2*(a_new*a_new + B_NEW*B_NEW + a_new*(m-shift) + (m-shift)*(m-shift) - 2*B_NEW*(a_new+(m-shift)) + 2*(sigma2*sigma2)))/exp((a_new-(m-shift))*(a_new-(m-shift))/(2*(sigma2*sigma2))) - (2*sigma2*(b_new*b_new + B_NEW*B_NEW + b_new*(m-shift) + (m-shift)*(m-shift) - 2*B_NEW*(b_new + (m-shift)) + 2*(sigma2*sigma2)))/exp((b_new - (m-shift))*(b_new - (m-shift))/(2*(sigma2*sigma2))) - sqrt(2*TMath::Pi())*(-((B_NEW - (m-shift))*(B_NEW - (m-shift)) *(m-shift)) + (2*B_NEW - 3*(m-shift))*(sigma2*sigma2))*TMath::Erf((-a_new + (m-shift))/(sqrt(2)*sigma2)) + sqrt(2*TMath::Pi())* (-((B_NEW - (m-shift))*(B_NEW - (m-shift))*(m-shift)) + (2*B_NEW - 3*(m-shift))*(sigma2*sigma2)) *TMath::Erf((-b_new + (m-shift))/(sqrt(2)*sigma2)))/(2 *sqrt(2*TMath::Pi())));
63  double CURVEG2 = fabs((1-csi)*secondG2 + (b_new*csi - a_new)*firstG2);
65 
66 
67  return fraction_sigma*CURVEG1 + (1-fraction_sigma)*CURVEG2;
68 
69 
70 }
RooRealProxy sigma
Definition: RooHORNSdini.h:43
RooRealProxy fraction_sigma
Definition: RooHORNSdini.h:45
RooRealProxy b
Definition: RooHORNSdini.h:40
RooRealProxy a
Definition: RooHORNSdini.h:39
RooRealProxy csi
Definition: RooHORNSdini.h:41
RooRealProxy m
Definition: RooHORNSdini.h:38
RooRealProxy shift
Definition: RooHORNSdini.h:42
RooRealProxy ratio_sigma
Definition: RooHORNSdini.h:44

Member Data Documentation

◆ a

RooRealProxy RooHORNSdini::a
protected

Definition at line 39 of file RooHORNSdini.h.

◆ b

RooRealProxy RooHORNSdini::b
protected

Definition at line 40 of file RooHORNSdini.h.

◆ csi

RooRealProxy RooHORNSdini::csi
protected

Definition at line 41 of file RooHORNSdini.h.

◆ fraction_sigma

RooRealProxy RooHORNSdini::fraction_sigma
protected

Definition at line 45 of file RooHORNSdini.h.

◆ m

RooRealProxy RooHORNSdini::m
protected

Definition at line 38 of file RooHORNSdini.h.

◆ ratio_sigma

RooRealProxy RooHORNSdini::ratio_sigma
protected

Definition at line 44 of file RooHORNSdini.h.

◆ shift

RooRealProxy RooHORNSdini::shift
protected

Definition at line 42 of file RooHORNSdini.h.

◆ sigma

RooRealProxy RooHORNSdini::sigma
protected

Definition at line 43 of file RooHORNSdini.h.


The documentation for this class was generated from the following files: