kafe2 documentation

kafe2 logo

Welcome to kafe2, the Karlsruhe Fit Environment 2!

kafe2 is a data fitting framework originally designed for use in undergraduate physics lab courses. It provides a Python toolkit for fitting models to data via the maximum likelihood method as well as visualizing the fit results. A quick rundown of why you’d want to use kafe2 can be found here. The gist of it is that kafe2 provides a simple, user-friendly interface for state-of-the-art statistical methods. It relies on Python packages such as numpy and matplotlib, and can use either scipy or the minimizer Minuit contained in the Python package iminuit as the numerical optimization backend.

The first chapter of this documentation gives detailed installation instructions. The Beginner’s Guide explains basic kafe2 usage to cover simple cases (both Python code and kafe2go). The User Guide and the kafe2go Guide describe advanced kafe2 use with Python code or kafe2go. The next chapter explains the mathematical foundations upon which kafe is built. While strictly speaking not required to use kafe2, reading the theory chapter is strongly recommended to understand which features to use in a state-of-the-art data analysis (regardless of whether kafe2 or another data analysis tool is used). The Developer Guide covers topics that are only relevant if you want to work on kafe2 as a developer (still very much WIP). Finally, the API Documentation provides a full description of the user-facing kafe2 application programming interface.