MINT2
RooJohnsonSU.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * *
4  * Copyright (c) 2000-2007, Regents of the University of California *
5  * and Stanford University. All rights reserved. *
6  * *
7  * Redistribution and use in source and binary forms, *
8  * with or without modification, are permitted according to the terms *
9  * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
10  *****************************************************************************/
11 //
12 // file: RooJohnsonSU.h
13 // author: Maurizio Martinelli (Nikhef)
14 // email: maurizio.martinelli@cern.ch
15 //
16 // description: this distribution can have highly asymmetric tails and is
17 // therefore helpful in fitting the mass difference between D* and D0 mass.
18 //
19 // reference: Johnson, N. L. (1954). Systems of frequency curves derived from the first law of Laplace., Trabajos de Estadistica, 5, 283-291.
20 //
21 
22 #ifndef ROOJOHNSONSU
23 #define ROOJOHNSONSU
24 
25 #include "RooAbsPdf.h"
26 #include "RooRealProxy.h"
27 #include "RooCategoryProxy.h"
28 #include "RooAbsReal.h"
29 #include "RooAbsCategory.h"
30 
31 class RooJohnsonSU : public RooAbsPdf {
32 public:
33  RooJohnsonSU() {} ;
34  RooJohnsonSU(const char *name, const char *title,
35  RooAbsReal& _x,
36  RooAbsReal& _mean,
37  RooAbsReal& _width,
38  RooAbsReal& _nu,
39  RooAbsReal& _tau);
40  RooJohnsonSU(const RooJohnsonSU& other, const char* name=0) ;
41  TObject* clone(const char* newname) const { return new RooJohnsonSU(*this,newname); }
42  inline virtual ~RooJohnsonSU() { }
43 
44 protected:
45 
46  RooRealProxy x ;
47  RooRealProxy mean ;
48  RooRealProxy width ;
49  RooRealProxy nu ;
50  RooRealProxy tau ;
51 
52  Double_t evaluate() const;
53  // Integrals
54  Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=0) const;
55  Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const;
56 
57 private:
58 
59  //ClassDef(RooJohnsonSU,1) // Your description goes here...
60 };
61 
62 #endif
RooRealProxy mean
Definition: RooJohnsonSU.h:47
TObject * clone(const char *newname) const
Definition: RooJohnsonSU.h:41
Double_t evaluate() const
RooRealProxy width
Definition: RooJohnsonSU.h:48
RooRealProxy x
Definition: RooJohnsonSU.h:46
Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
virtual ~RooJohnsonSU()
Definition: RooJohnsonSU.h:42
Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
RooRealProxy tau
Definition: RooJohnsonSU.h:50
RooRealProxy nu
Definition: RooJohnsonSU.h:49