Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
RooBukinPdf.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitModels *
4  * File: $Id: RooBukinPdf.h,v 1.5 2007/07/12 20:30:49 wouter Exp $
5  * Authors: *
6  * RW, Ruddick William UC Colorado wor@slac.stanford.edu *
7  * *
8  * Copyright (c) 2000-2005, Regents of the University of California *
9  * and Stanford University. All rights reserved. *
10  * *
11  * Redistribution and use in source and binary forms, *
12  * with or without modification, are permitted according to the terms *
13  * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
14  *****************************************************************************/
15 
16 
17 // -- CLASS DESCRIPTION [PDF] --
18 // RooBukinPdf implements the NovosibirskA function
19 
20 #ifndef ROO_BUKINPDF
21 #define ROO_BUKINPDF
22 
23 #include "RooAbsPdf.h"
24 #include "RooRealProxy.h"
25 
26 class RooRealVar;
27 class RooAbsReal;
28 
29 class RooBukinPdf : public RooAbsPdf {
30 public:
31 
32  RooBukinPdf() {} ;
33  RooBukinPdf(const char *name, const char *title,
34  RooAbsReal& _x, RooAbsReal& _Xp,
35  RooAbsReal& _sigp, RooAbsReal& _xi,
36  RooAbsReal& _rho1, RooAbsReal& _rho2);
37 
38  RooBukinPdf(const RooBukinPdf& other,const char* name=0) ;
39 
40  virtual TObject* clone(const char* newname) const { return new RooBukinPdf(*this,newname); }
41  inline virtual ~RooBukinPdf() { }
42 
43 protected:
44  RooRealProxy x;
45  RooRealProxy Xp;
46  RooRealProxy sigp;
47  RooRealProxy xi;
48  RooRealProxy rho1;
49  RooRealProxy rho2;
50  Double_t evaluate() const;
51  RooSpan<double> evaluateBatch(std::size_t begin, std::size_t batchSize) const;
52 
53 private:
54 
55  ClassDef(RooBukinPdf,2) // Variation of Novosibirsk PDF
56 };
57 
58 #endif