Logo ROOT  
Reference Guide
RooFit Tutorials

These tutorials illustrate the main features of RooFit: the name of the examples and their short description help in figuring out their objective.

Files

file  rf101_basics.C
  View in nbviewer Open in SWAN Basic functionality: fitting, plotting, toy data generation on one-dimensional p.d.f
 
file  rf101_basics.py
  View in nbviewer Open in SWAN This tutorial illustrates the basic features of RooFit.
 
file  rf102_dataimport.C
  View in nbviewer Open in SWAN Basic functionality: importing data from ROOT TTrees and THx histograms
 
file  rf103_interprfuncs.C
  View in nbviewer Open in SWAN Basic functionality: interpreted functions and p.d.f.s
 
file  rf103_interprfuncs.py
  View in nbviewer Open in SWAN Basic functionality: interpreted functions and p.d.f.s
 
file  rf104_classfactory.C
  View in nbviewer Open in SWAN Basic functionality: The class factory for functions and p.d.f.s
 
file  rf104_classfactory.py
  View in nbviewer Open in SWAN Basic functionality: the class factory for functions and p.d.f.s
 
file  rf105_funcbinding.C
  View in nbviewer Open in SWAN Basic functionality: binding ROOT math functions as RooFit functions and pdfs
 
file  rf106_plotdecoration.C
  View in nbviewer Open in SWAN Basic functionality: adding boxes with parameters, statistics to RooPlots, decorating with arrows, text etc...
 
file  rf106_plotdecoration.py
  View in nbviewer Open in SWAN Basic functionality: adding boxes with parameters to RooPlots and decorating with arrows, etc...
 
file  rf107_plotstyles.C
  View in nbviewer Open in SWAN Basic functionality: various plotting styles of data, functions in a RooPlot
 
file  rf107_plotstyles.py
  View in nbviewer Open in SWAN Basic functionality: demonstration of various plotting styles of data, functions in a RooPlot
 
file  rf108_plotbinning.C
  View in nbviewer Open in SWAN Basic functionality: plotting unbinned data with alternate and variable binnings
 
file  rf108_plotbinning.py
  View in nbviewer Open in SWAN Basic functionality: plotting unbinned data with alternate and variable binnings
 
file  rf109_chi2residpull.C
  View in nbviewer Open in SWAN Basic functionality: Calculating chi^2 from histograms and curves in RooPlots, making histogram of residual and pull distributions
 
file  rf110_normintegration.C
  View in nbviewer Open in SWAN Basic functionality: normalization and integration of p.d.fs, construction of cumulative distribution monodimensional functions
 
file  rf110_normintegration.py
  View in nbviewer Open in SWAN Basic functionality: examples on normalization and integration of p.d.fs, construction of cumulative distribution functions from monodimensional p.d.f.s
 
file  rf111_derivatives.C
  View in nbviewer Open in SWAN Basic functionality: numerical 1st,2nd and 3rd order derivatives w.r.t.
 
file  rf111_derivatives.py
  View in nbviewer Open in SWAN Basic functionality: numerical 1st, and 3rd order derivatives w.r.t.
 
file  rf201_composite.C
  View in nbviewer Open in SWAN Addition and convolution: composite p.d.f with signal and background component
 
file  rf201_composite.py
  View in nbviewer Open in SWAN Addition and convolution: composite p.d.f with signal and background component
 
file  rf202_extendedmlfit.C
  View in nbviewer Open in SWAN Addition and convolution: setting up an extended maximum likelihood fit
 
file  rf202_extendedmlfit.py
  View in nbviewer Open in SWAN Addition and convolution: setting up an extended maximum likelihood fit
 
file  rf203_ranges.C
  View in nbviewer Open in SWAN Addition and convolution: fitting and plotting in sub ranges
 
file  rf203_ranges.py
  View in nbviewer Open in SWAN Addition and convolution: fitting and plotting in sub ranges
 
file  rf204_extrangefit.C
  View in nbviewer Open in SWAN 'ADDITION AND CONVOLUTION' RooFit tutorial macro #204
 
file  rf204_extrangefit.py
  View in nbviewer Open in SWAN Addition and convolution: extended maximum likelihood fit with alternate range definition for observed number of events.
 
file  rf204a_extrangefit_RooAddPdf.C
  View in nbviewer Open in SWAN 'ADDITION AND CONVOLUTION' RooFit tutorial macro #204a
 
file  rf205_compplot.C
  View in nbviewer Open in SWAN Addition and convolution: options for plotting components of composite p.d.f.s.
 
file  rf205_compplot.py
  View in nbviewer Open in SWAN Addition and convolution: options for plotting components of composite p.d.f.s.
 
file  rf206_treevistools.C
  View in nbviewer Open in SWAN Addition and convolution: tools for visualization of RooAbsArg expression trees
 
file  rf206_treevistools.py
  View in nbviewer Open in SWAN Addition and convolution: tools for visualization of ROOT.RooAbsArg expression trees
 
file  rf207_comptools.C
  View in nbviewer Open in SWAN Addition and convolution: tools and utilities for manipulation of composite objects
 
file  rf208_convolution.C
  View in nbviewer Open in SWAN Addition and convolution: one-dimensional numeric convolution
 
file  rf209_anaconv.C
  View in nbviewer Open in SWAN Addition and convolution: decay function p.d.fs with optional B physics effects (mixing and CP violation)
 
file  rf209_anaconv.py
  View in nbviewer Open in SWAN Addition and convolution: decay function p.d.fs with optional B physics effects (mixing and CP violation) that can be analytically convolved with e.g.
 
file  rf210_angularconv.C
  View in nbviewer Open in SWAN Addition and convolution: convolution in cyclical angular observables theta
 
file  rf211_paramconv.C
  View in nbviewer Open in SWAN Addition and convolution: working with a p.d.f.
 
file  rf301_composition.C
  View in nbviewer Open in SWAN Multidimensional models: multi-dimensional p.d.f.s through composition e.g.
 
file  rf301_composition.py
  View in nbviewer Open in SWAN Multidimensional models: multi-dimensional p.d.f.s through composition, e.g.
 
file  rf302_utilfuncs.C
  View in nbviewer Open in SWAN Multidimensional models: utility functions classes available for use in tailoring of composite (multidimensional) pdfs
 
file  rf302_utilfuncs.py
  View in nbviewer Open in SWAN Multidimensional models: utility functions classes available for use in tailoring of composite (multidimensional) pdfs
 
file  rf303_conditional.C
  View in nbviewer Open in SWAN Multidimensional models: use of tailored p.d.f as conditional p.d.fs.s
 
file  rf304_uncorrprod.C
  View in nbviewer Open in SWAN Multidimensional models: simple uncorrelated multi-dimensional p.d.f.s
 
file  rf304_uncorrprod.py
  View in nbviewer Open in SWAN Multidimensional models: simple uncorrelated multi-dimensional p.d.f.s
 
file  rf305_condcorrprod.C
  View in nbviewer Open in SWAN Multidimensional models: multi-dimensional p.d.f.s with conditional p.d.fs in product
 
file  rf305_condcorrprod.py
  View in nbviewer Open in SWAN Multidimensional models: multi-dimensional p.d.f.s with conditional p.d.fs in product
 
file  rf306_condpereventerrors.C
  View in nbviewer Open in SWAN Multidimensional models: conditional p.d.f.
 
file  rf306_condpereventerrors.py
  View in nbviewer Open in SWAN Multidimensional models: complete example with use of conditional p.d.f.
 
file  rf307_fullpereventerrors.C
  View in nbviewer Open in SWAN Multidimensional models: full p.d.f.
 
file  rf307_fullpereventerrors.py
  View in nbviewer Open in SWAN Multidimensional models: usage of full p.d.f.
 
file  rf308_normintegration2d.C
  View in nbviewer Open in SWAN Multidimensional models: normalization and integration of p.d.fs, construction of cumulative distribution functions from p.d.f.s in two dimensions
 
file  rf308_normintegration2d.py
  View in nbviewer Open in SWAN
 
file  rf309_ndimplot.C
  View in nbviewer Open in SWAN Multidimensional models: making 2/3 dimensional plots of p.d.f.s and datasets
 
file  rf309_ndimplot.py
  View in nbviewer Open in SWAN
 
file  rf310_sliceplot.C
  View in nbviewer Open in SWAN Multidimensional models: projecting p.d.f and data slices in discrete observables
 
file  rf310_sliceplot.py
  View in nbviewer Open in SWAN
 
file  rf311_rangeplot.C
  View in nbviewer Open in SWAN Multidimensional models: projecting p.d.f and data ranges in continuous observables
 
file  rf311_rangeplot.py
  View in nbviewer Open in SWAN
 
file  rf312_multirangefit.C
  View in nbviewer Open in SWAN Multidimensional models: performing fits in multiple (disjoint) ranges in one or more dimensions
 
file  rf312_multirangefit.py
  View in nbviewer Open in SWAN
 
file  rf313_paramranges.C
  View in nbviewer Open in SWAN Multidimensional models: working with parametrized ranges to define non-rectangular regions for fitting and integration
 
file  rf313_paramranges.py
  View in nbviewer Open in SWAN
 
file  rf314_paramfitrange.C
  View in nbviewer Open in SWAN Multidimensional models: working with parametrized ranges in a fit.
 
file  rf314_paramfitrange.py
  View in nbviewer Open in SWAN
 
file  rf315_projectpdf.C
  View in nbviewer Open in SWAN Multidimensional models: marginizalization of multi-dimensional p.d.f.s through integration
 
file  rf315_projectpdf.py
  View in nbviewer Open in SWAN
 
file  rf316_llratioplot.C
  View in nbviewer Open in SWAN Multidimensional models: using the likelihood ratio technique to construct a signal enhanced one-dimensional projection of a multi-dimensional p.d.f.
 
file  rf316_llratioplot.py
  View in nbviewer Open in SWAN
 
file  rf401_importttreethx.C
  View in nbviewer Open in SWAN Data and categories: advanced options for importing data from ROOT TTree and THx histograms
 
file  rf402_datahandling.C
  View in nbviewer Open in SWAN Data and categories: tools for manipulation of (un)binned datasets
 
file  rf402_datahandling.py
  View in nbviewer Open in SWAN
 
file  rf403_weightedevts.C
  View in nbviewer Open in SWAN Data and categories: using weights in unbinned datasets
 
file  rf404_categories.C
  View in nbviewer Open in SWAN Data and categories: working with RooCategory objects to describe discrete variables
 
file  rf404_categories.py
  View in nbviewer Open in SWAN
 
file  rf405_realtocatfuncs.C
  View in nbviewer Open in SWAN Data and categories: demonstration of real-->discrete mapping functions
 
file  rf405_realtocatfuncs.py
  View in nbviewer Open in SWAN
 
file  rf406_cattocatfuncs.C
  View in nbviewer Open in SWAN Data and categories: demonstration of discrete-->discrete (invertable) functions
 
file  rf406_cattocatfuncs.py
  View in nbviewer Open in SWAN
 
file  rf407_latextables.C
  View in nbviewer Open in SWAN Data and categories: latex printing of lists and sets of RooArgSets
 
file  rf407_latextables.py
  View in nbviewer Open in SWAN
 
file  rf501_simultaneouspdf.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: using simultaneous p.d.f.s to describe simultaneous fits to multiple datasets
 
file  rf501_simultaneouspdf.py
  View in nbviewer Open in SWAN
 
file  rf502_wspacewrite.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: creating and writing a workspace
 
file  rf502_wspacewrite.py
  View in nbviewer Open in SWAN
 
file  rf503_wspaceread.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: reading and using a workspace
 
file  rf504_simwstool.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: using RooSimWSTool to construct a simultaneous p.d.f that is built of variations of an input p.d.f
 
file  rf504_simwstool.py
  View in nbviewer Open in SWAN
 
file  rf505_asciicfg.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: reading and writing ASCII configuration files
 
file  rf505_asciicfg.py
  View in nbviewer Open in SWAN
 
file  rf506_msgservice.C
  View in nbviewer Open in SWAN Organisation and simultaneous fits: tuning and customizing the RooFit message logging facility
 
file  rf506_msgservice.py
  View in nbviewer Open in SWAN
 
file  rf507_debugtools.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: RooFit memory tracing debug tool
 
file  rf507_debugtools.py
  View in nbviewer Open in SWAN
 
file  rf508_listsetmanip.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: RooArgSet and RooArgList tools and tricks
 
file  rf509_wsinteractive.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: easy interactive access to workspace contents - CINT to CLING code migration
 
file  rf509_wsinteractive.py
  View in nbviewer Open in SWAN
 
file  rf510_wsnamedsets.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: working with named parameter sets and parameter snapshots in workspaces
 
file  rf511_wsfactory_basic.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: basic use of the 'object factory' associated with a workspace to rapidly build p.d.f.s functions and their parameter components
 
file  rf511_wsfactory_basic.py
  View in nbviewer Open in SWAN
 
file  rf512_wsfactory_oper.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: operator expressions and expression-based basic p.d.f.s in the workspace factory syntax
 
file  rf513_wsfactory_tools.C
  View in nbviewer Open in SWAN Organization and simultaneous fits: RooCustomizer and RooSimWSTool interface in factory workspace tool in a complex standalone B physics example
 
file  rf513_wsfactory_tools.py
  View in nbviewer Open in SWAN
 
file  rf601_intminuit.C
  View in nbviewer Open in SWAN Likelihood and minimization: interactive minimization with MINUIT
 
file  rf602_chi2fit.C
  View in nbviewer Open in SWAN Likelihood and minimization: setting up a chi^2 fit to a binned dataset
 
file  rf603_multicpu.C
  View in nbviewer Open in SWAN Likelihood and minimization: setting up a multi-core parallelized unbinned maximum likelihood fit
 
file  rf603_multicpu.py
  View in nbviewer Open in SWAN
 
file  rf604_constraints.C
  View in nbviewer Open in SWAN Likelihood and minimization: fitting with constraints
 
file  rf604_constraints.py
  View in nbviewer Open in SWAN
 
file  rf605_profilell.C
  View in nbviewer Open in SWAN Likelihood and minimization: working with the profile likelihood estimator
 
file  rf606_nllerrorhandling.C
  View in nbviewer Open in SWAN Likelihood and minimization: understanding and customizing error handling in likelihood evaluations
 
file  rf607_fitresult.C
  View in nbviewer Open in SWAN Likelihood and minimization: demonstration of options of the RooFitResult class
 
file  rf607_fitresult.py
  View in nbviewer Open in SWAN
 
file  rf608_fitresultaspdf.C
  View in nbviewer Open in SWAN Likelihood and minimization: representing the parabolic approximation of the fit as a multi-variate Gaussian on the parameters of the fitted p.d.f.
 
file  rf608_fitresultaspdf.py
  View in nbviewer Open in SWAN
 
file  rf609_xychi2fit.C
  View in nbviewer Open in SWAN Likelihood and minimization: setting up a chi^2 fit to an unbinned dataset with X,Y,err(Y) values (and optionally err(X) values)
 
file  rf609_xychi2fit.py
  View in nbviewer Open in SWAN
 
file  rf610_visualerror.C
  View in nbviewer Open in SWAN Likelihood and minimization: visualization of errors from a covariance matrix
 
file  rf610_visualerror.py
  View in nbviewer Open in SWAN
 
file  rf611_weightedfits.C
  View in nbviewer Open in SWAN Likelihood and minimization: Parameter uncertainties for weighted unbinned ML fits
 
file  rf701_efficiencyfit.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf701_efficiencyfit.py
  View in nbviewer Open in SWAN
 
file  rf702_efficiencyfit_2D.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf702_efficiencyfit_2D.py
  View in nbviewer Open in SWAN
 
file  rf703_effpdfprod.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf703_effpdfprod.py
  View in nbviewer Open in SWAN
 
file  rf704_amplitudefit.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf704_amplitudefit.py
  View in nbviewer Open in SWAN
 
file  rf705_linearmorph.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf706_histpdf.C
  View in nbviewer Open in SWAN Special p.d.f.
 
file  rf706_histpdf.py
  View in nbviewer Open in SWAN
 
file  rf707_kernelestimation.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf707_kernelestimation.py
  View in nbviewer Open in SWAN
 
file  rf708_bphysics.C
  View in nbviewer Open in SWAN Speecial p.d.f.
 
file  rf708_bphysics.py
  View in nbviewer Open in SWAN
 
file  rf709_BarlowBeeston.C
  View in nbviewer Open in SWAN Implementing the Barlow-Beeston method for taking into account the statistical uncertainty of a Monte-Carlo fit template.
 
file  rf801_mcstudy.C
  View in nbviewer Open in SWAN Validation and MC studies: toy Monte Carlo study that perform cycles of event generation and fitting
 
file  rf801_mcstudy.py
  View in nbviewer Open in SWAN
 
file  rf802_mcstudy_addons.C
  View in nbviewer Open in SWAN Validation and MC studies: RooMCStudy - using separate fit and generator models, using the chi^2 calculator model Running a biased fit model against an optimal fit.
 
file  rf803_mcstudy_addons2.C
  View in nbviewer Open in SWAN Validation and MC studies: RooMCStudy - Using the randomizer and profile likelihood add-on models
 
file  rf804_mcstudy_constr.C
  View in nbviewer Open in SWAN Validation and MC studies: using RooMCStudy on models with constrains
 
file  rf901_numintconfig.C
  View in nbviewer Open in SWAN Numeric algorithm tuning: configuration and customization of how numeric (partial) integrals are executed
 
file  rf902_numgenconfig.C
  View in nbviewer Open in SWAN Numeric algorithm tuning: configuration and customization of how MC sampling algorithms on specific p.d.f.s are executed
 
file  rf903_numintcache.C
  View in nbviewer Open in SWAN Numeric algorithm tuning: caching of slow numeric integrals and parameterization of slow numeric integrals