SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
LIGHT
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
RooFit Toolkit
Data Management
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)

Home Page of the RooFit Toolkit for Data Modeling


The RooFit packages provide a toolkit for modeling the expected distribution of events in a physics analysis. Models can be used to perform likelihood fits, produce plots, and generate "toy Monte Carlo" samples for various studies. The RooFit tools are integrated with the object-oriented and interactive ROOT graphical environment.

The official home page of RooFit is http://roofit.sourceforge.net

Consult the SourceForge site for use of RooFit outside the BaBar SoftRelTools frameworks, recommended tags, tutorials, class documentation and use it to submit bug reports and feature requests.

This page details how to integrate RooFit in the BaBar environment.



Latest News


26-Feb-2005 RooFit version 1.91 available (works with ROOT4)
04-Oct-2002 RooFit migrated to SourceForge
20-Aug-2002 RooFit home page reorganized
08-Jul-2002: New RooFit tutorial on plotting added
30-Jan-2002: Links to example fit implementations added
14-Nov-2001: RooFit web page opened
21-Aug-2001: first beta release announcement
14-Jun-2001: Talk at the ROOT2001 Workshop
25-Apr-2001: Collaboration Meeting mini-plenary session on RooFit design



Getting Started


Obtaining the code

The RooFit code for BaBar consists of 3 packages:

  • RooFitCore - The core package
  • RooFitModels - Contributed PDF classes and other functions
  • RooFitBabar - Babar-specific classes and PDFs

BaBar users need all three packages. Only RooFitBabar is in the BaBar repository, RooFitCore and RooFitModels reside in a CVS repository at roofit.sourceforge.net.

To facilitate importing the RooFitCore/Models code in BaBar software releases, RooFitBabar contains a script addpkg_rf that allows to check out RooFitCore/Models in the same style as other BaBar software packages are handled:

  unix> addpkg [ -h ] RooFitBabar [ <tag> ]
  unix> gmake RooFitBabar.binscripts
  unix> addpkg_rf [ -h ] RooFitCore [ <tag> ]
  unix> addpkg_rf [ -h ] RooFitModels [ <tag> ]

The -h option, without tag, will check out the head. Once checked out, cvs operations in RooFitCore/RooFitModels (e.g. cvs update -A) will work as usual and the directories will remain connected to the repository at roofit.sourceforge.net. Recommended tags for RooFitCore and RooFitModels are listed here.

For ROOT version 4.x, it is suggested that you use RooFitCore/RooFitModels V02-00-05.

In ROOT version 5.x, the RooFit Classes have been built in. In general you don't have to build RooFit by yourself, or you should find the latest tag.

Building the libraries

RooFit is easiest built in a series 12 release as it requires ROOT version 3.02-07 or higher. Currently no analysis releases are based on series 12, but the forthcomming analysis-14 release will be.

WV 03/04/05
From release analysis-24 and on, which are based on ROOT4 you'll need to use RooFit version V01-09-01 or higher. Note that the RooFit version in analysis-24 is lower so if you want to use RooFit in this release you'll need to check it out and compile it yourself. The will of course be fixed in the next analysis release Compile the libraries as follows:

  unix> gmake RooFitCore.root
  unix> gmake RooFitModels.root
  unix> gmake RooFitBabar.root

See this HN thread for RooFit 1.91 release notes and Quick Start Guide.

RooFit has been tested on the following platforms:

  • Linux (RedHat 6.2) with gcc 2.95.2
  • Linux (RedHat 7.2) with gcc 2.95.3
  • Linux (RedHat 7.2) with gcc 2.96
  • Linux (SL3) with gcc 3.2.3
  • Windows XP / CygWin with gcc 3.3
  • Solaris 5.8 with CC from WorkShop6
  • OSF with native compiler

If you observe compiler warnings or errors on other platform/compiler combinations, please contact us.


Documentation


RooFit project documentation is available on http://roofit.sourceforge.net/docs/.

User projects

Various analysis groups maintain a web page describing their fit implementation in RooFit

Please contact us to have your page linked here


Support


General questions

If you have a general question or suggestion about a RooFit package, please post it to the interactive root hypernews. You should subscribe to that group to receive general announcements of new versions, etc.

Bugs

If you find what appears to be a reproducible bug, please file a report in the bug tracker on roofit.sourceforge.net. Instructions are here. Please be sure to send along a standalone macro reproducing the reported problem.



Page maintained by David Kirkby and Wouter Verkerke