Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
RooMathMoreReg.cxx
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitCore *
4  * File: $Id$
5  * Authors: *
6  * WV, Wouter Verkerke, NIKHEF, verkerke@nikhef.nl *
7  * *
8  * Copyright (c) 2000-2008, NIKHEF, Regents of the University of California *
9  * and Stanford University. All rights reserved. *
10  * *
11  *****************************************************************************/
12 
13 /** \class RooMathMoreReg
14  \ingroup Roofit
15 
16 **/
17 
18 #include "Riostream.h"
19 #include "RooMathMoreReg.h"
20 #include "RooCFunction1Binding.h"
21 #include "RooCFunction2Binding.h"
22 #include "RooCFunction3Binding.h"
23 #include "RooCFunction4Binding.h"
24 #include "Math/SpecFunc.h"
25 #include "Math/DistFunc.h"
26 
27 static RooMathMoreReg dummy ;
28 
29 RooMathMoreReg::RooMathMoreReg()
30 {
31 #ifdef MATHMORE
32 
33  // Import MathMore 'special' functions from ROOT::Math namespace
34  RooCFunction1Ref<double,double>::fmap().add("ROOT::Math::comp_ellint_1",ROOT::Math::comp_ellint_1,"k") ;
35  RooCFunction1Ref<double,double>::fmap().add("ROOT::Math::comp_ellint_2",ROOT::Math::comp_ellint_2,"k") ;
36  RooCFunction1Ref<double,double>::fmap().add("ROOT::Math::expint",ROOT::Math::expint) ;
37  RooCFunction1Ref<double,double>::fmap().add("ROOT::Math::riemann_zeta",ROOT::Math::riemann_zeta) ;
38  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::cyl_bessel_i",ROOT::Math::cyl_bessel_i, "nu", "x") ;
39  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::cyl_bessel_j",ROOT::Math::cyl_bessel_j, "nu", "x") ;
40  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::cyl_bessel_k",ROOT::Math::cyl_bessel_k, "nu", "x") ;
41  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::cyl_neumann",ROOT::Math::cyl_neumann, "nu", "x") ;
42  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::ellint_1",ROOT::Math::ellint_1, "k", "phi") ;
43  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::ellint_2",ROOT::Math::ellint_2, "k", "phi") ;
44  RooCFunction2Ref<double,unsigned int,double>::fmap().add("ROOT::Math::laguerre",ROOT::Math::laguerre, "n", "x") ;
45  RooCFunction2Ref<double,unsigned int,double>::fmap().add("ROOT::Math::legendre",ROOT::Math::legendre, "l", "x") ;
46  RooCFunction2Ref<double,unsigned int,double>::fmap().add("ROOT::Math::sph_bessel",ROOT::Math::sph_bessel, "n", "x") ;
47  RooCFunction2Ref<double,unsigned int,double>::fmap().add("ROOT::Math::sph_neumann",ROOT::Math::sph_neumann, "n", "x") ;
48  RooCFunction3Ref<double,double,double,double>::fmap().add("ROOT::Math::conf_hyperg",ROOT::Math::conf_hyperg,"a","b","z") ;
49  RooCFunction3Ref<double,double,double,double>::fmap().add("ROOT::Math::conf_hypergU",ROOT::Math::conf_hypergU,"a","b","z") ;
50  RooCFunction3Ref<double,double,double,double>::fmap().add("ROOT::Math::ellint_3",ROOT::Math::ellint_3,"n","k","phi") ;
51  RooCFunction3Ref<double,unsigned int,double,double>::fmap().add("ROOT::Math::assoc_laguerre",ROOT::Math::assoc_laguerre,"n","m","x") ;
52  RooCFunction3Ref<double,unsigned int,unsigned int,double>::fmap().add("ROOT::Math::assoc_legendre",ROOT::Math::assoc_legendre,"l","m","x") ;
53  RooCFunction3Ref<double,unsigned int,unsigned int,double>::fmap().add("ROOT::Math::sph_legendre",ROOT::Math::sph_legendre,"l","m","theta") ;
54 
55  // MathMore quantile functions from ROOT::Math namespace
56  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::tdistribution_quantile_c",ROOT::Math::tdistribution_quantile_c,"z","r") ;
57  RooCFunction2Ref<double,double,double>::fmap().add("ROOT::Math::tdistribution_quantile",ROOT::Math::tdistribution_quantile,"z","r") ;
58 
59 #endif
60 }