This C++ version of BAT is still being maintained, but addition of new features is unlikely. Check out our new incarnation, BAT.jl, the Bayesian analysis toolkit in Julia. In addition to Metropolis-Hastings sampling, BAT.jl supports Hamiltonian Monte Carlo (HMC) with automatic differentiation, automatic prior-based parameter space transformations, and much more. See the BAT.jl documentation.
Downloads
Our releases are hosted at our github page. This page is maintained to provide access to older files.
Urgency: medium
Release date: 19.8.2010
Source code:
BAT-0.4.tar.gz
(624 kB)
reference guide
| installation instructions
| changelog
This version contains many improvements and updates and several bugfixes. The most important changes are summarized below.
Installation procedure
- Fixed compilation with Cuba support on Mac OS X.
- Pre-defined models were separated into a separate shared library libBATmodels.so which needs to be included when linking a program that uses them. No change is needed if they are used in the Root interactive session.
- Makefiles for all examples are now automatically setup during configuration
step to use/not use Cuba or RooFit/RooStats. Also they include a reference to
environmental variable $BATINSTALLDIR such that if this variable is set properly
it is no longer necessary to adjust the makefiles with the installation of the
new BAT version.
Same adjustments were done to CreateProject.sh script which is now also setup during configuration.
Model setup
- Added a possibility to set priors for parameters as TF1 objects.
- Flat priors are being cached to speed up the MCMC.
- Added a possibility to re-set parameter ranges.
MCMC
- Fixed MCMC convergence check.
- Added pre-defined levels of MCMC precision (Low, Medium, High, VeryHigh).
- For sequential MCMC setup only fill marginalized distributions once per sequence.
- Added virtual method MCMCCurrentPointInterface() which gives user access to each generated point in the MCMC regardless of whether it has been accepted or not.
- Virtual method MCMCTrialFunctionSingle() now returns double, i.e., the proposal point in a single dimension.
- Pre-run can now also be stored in the Root file.
- Renamed branch names in the tree containing the MCMC:
- removed prefix 'f' from the names
- renamed LogLokelihood to LogProbability as that is what's being recorded
Plotting
- Fixed bug in plotting of upper limits.
- Legend is now printed on all 1D marginalized distributions by default.
Additions
- Added a fast-fitter class BCTemplateFitter which allows an easy way of template fitting.
- Added BCSummaryTool providing plots and tables summarizing the output of the MCMC.
- Examples were reorganized to three cathegories: basic, advanced, expert; and many new examples were added.
Interface to RooFit/RooStats
- Support for RooFit workspaces and an interface allowing to run BAT from within RooStats can now be optionally compiled with BAT. They require Root version 5.27/04 or later.
Goodness-of-fit
- Many new test statistics and associated p-values are available: likelihood-ratio, Kolmogorov-Smirnov, two chi2-related statistics due to Johnson(2004).
- Added calculation of the runs test statistic (arXiv:1005.3233).
- Added possibility to create the empirical cumulative distribution function for 1D problems.
- Fixed small bug in BCHistogramFitter's fast p-value calculation.
Performance testing
- We will start to run a performance tests of the MCMC in BAT. These will be shortly after the release is made public on the BAT webpage. In the future the performance test suite will be included in the release.
For detailed list of changes see the ChangeLog.
Older versions:
0.9.4.1 (bugfix)
0.9.4 (pre 1.0)
0.9.3 (pre 1.0)
0.9.2 (pre 1.0)
0.9.1 (pre 1.0)
0.9 (pre 1.0)
0.4.3 (dev)
0.4.2 (dev)
0.4.1 (dev)
0.4 (dev)
0.3.2 (dev)
0.3.1 (dev)
0.3 (dev)
0.2.1 (dev)
0.2 (dev)
0.1 (initial release)