GooFit for Python
GooFit is a highly parallel fitting framework originally designed for High Energy Physics.
Installation basics
This package can be installed with pip, but uses SciKit-Build, and is build, fully optimized, on your system. Because of this, there are a few caveats when running a pip install if you use an old version of pip. When you build, you should also use pip’s -v flag, so that you can see it build (and observe the configuration options). Otherwise, you might wait a very long time without output (especially if CUDA was found).
Installation: pip
Using pip 10+:
pip install -v goofit
Using pip < 10:
pip install scikit-build # optionally cmake ninja pip install -v goofit
GooFit will automatically look for CUDA, and build in GPU mode if it finds CUDA. You can pick a specific version by passing through a CMake option (see below), or by setting an environment variable, GOOFIT_DEVICE before building. You may want to build with OpenMP as a backend to avoid using your GPU, or you might want the CPP version if you are using Anaconda on macOS. Here are the three common backends:
GOOFIT_DEVICE=CUDA pip install -v goofit GOOFIT_DEVICE=OMP pip install -v goofit GOOFIT_DEVICE=CPP pip install -v goofit
The lines above use environment variables; GooFit will find any environment variables that start with GOOFIT_* and set them as CMake defines. If you want to send arbitrary commands to CMake through PIP, you will need to pass each option through, starting with a -- option. Pip will try to reuse the built version if you do not pass options, but will rebuild if you pass options, so this works for a rebuild, unlike the lines above. This is how you would do this to set OMP as the backend:
pip install -v goofit --install-option="--" --install-option="-DGOOFIT_DEVICE=OMP" # OR PIP_INSTALL_OPTION="-- -DGOOFIT_DEVICE=OMP" pip install -v goofit
Installation: local
If you want to add PDFs to GooFit, or use GooFit packages, you should be working in a local directory using git. In the following example, I’m assuming you’ve set up SSH keys with GitHub; you can use https instead if you prefer by changing the URL to https://github.com/GooFit/GooFit.git:
git clone --recursive git@github.com:GooFit/GooFit.git cd goofit
Local pip
The normal install here works, though as usual you should include verbose output and you should be in a virtual environment (standard practice):
pip install -v .
Metadata
Release files for goofit 2.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| goofit-2.3.0.tar.gz | 6.0 MB | Without provenance | Details for goofit-2.3.0.tar.gz |
Release files / goofit-2.3.0.tar.gz
| Download URL | goofit-2.3.0.tar.gz |
|---|---|
| Size | 6.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b27a7f62f9fecedcab95f8c06d51c11a73a3ebfdb3b5827a173a73198f223633
|
|
BLAKE2b-256 checksum How to use checksums |
6aaf66ceddf6f148f43d11b49368b18ae49b30b6068e76600919ffab0233f3d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.7
|
Security for goofit 2.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.