21 using namespace RooFit;
 
   23 void rf901_numintconfig()
 
   30    RooAbsReal::defaultIntegratorConfig()->Print(
"v");
 
   43    RooAbsReal::defaultIntegratorConfig()->setEpsAbs(1e-6);
 
   44    RooAbsReal::defaultIntegratorConfig()->setEpsRel(1e-6);
 
   50    RooRealVar x(
"x", 
"x", -10, 10);
 
   51    RooLandau landau(
"landau", 
"landau", x, RooConst(0), RooConst(0.1));
 
   54    RooMsgService::instance().addStream(DEBUG, Topic(Integration));
 
   57    RooAbsReal *intLandau = landau.createIntegral(x);
 
   58    Double_t val = intLandau->getVal();
 
   59    cout << 
" [1] int_dx landau(x) = " << setprecision(15) << val << endl;
 
   66    RooNumIntConfig customConfig(*RooAbsReal::defaultIntegratorConfig());
 
   67 #ifdef R__HAS_MATHMORE 
   68    customConfig.method1D().setLabel(
"RooAdaptiveGaussKronrodIntegrator1D");
 
   70    Warning(
"rf901_numintconfig",
"ROOT is built without Mathmore (GSL) support. Cannot use RooAdaptiveGaussKronrodIntegrator1D");
 
   74    RooAbsReal *intLandau2 = landau.createIntegral(x, NumIntConfig(customConfig));
 
   75    Double_t val2 = intLandau2->getVal();
 
   76    cout << 
" [2] int_dx landau(x) = " << val2 << endl;
 
   82    landau.setIntegratorConfig(customConfig);
 
   85    RooAbsReal *intLandau3 = landau.createIntegral(x);
 
   86    Double_t val3 = intLandau3->getVal();
 
   87    cout << 
" [3] int_dx landau(x) = " << val3 << endl;
 
   90 #ifdef R__HAS_MATHMORE 
   91    RooAbsReal::defaultIntegratorConfig()->method1D().setLabel(
"RooAdaptiveGaussKronrodIntegrator1D");
 
   97    RooAbsReal::defaultIntegratorConfig()->getConfigSection(
"RooIntegrator1D").setRealValue(
"maxSteps", 30);
 
  102    customConfig.getConfigSection(
"RooAdaptiveGaussKronrodIntegrator1D").setRealValue(
"maxSeg", 50);
 
  103    customConfig.getConfigSection(
"RooAdaptiveGaussKronrodIntegrator1D").setCatLabel(
"method", 
"15Points");
 
  106    customConfig.getConfigSection(
"RooAdaptiveGaussKronrodIntegrator1D").find(
"method")->Print(
"v");