FAQ¶
Frequently Asked Questions about pyhf
and its use.
Questions¶
Where can I ask questions about pyhf
use?¶
If you have a question about the use of pyhf
not covered in the documentation, please ask a question on the GitHub Discussions.
If you believe you have found a bug in pyhf
, please report it in the GitHub Issues.
How can I get updates on pyhf
?¶
If you’re interested in getting updates from the pyhf
dev team and release
announcements you can join the pyhf-announcements
mailing list.
Is it possible to set the backend from the CLI?¶
Yes.
Use the --backend
option for pyhf cls
to specify a tensor backend.
The default backend is NumPy.
For more information see pyhf cls --help
.
Does pyhf
support Python 2?¶
No.
Like the rest of the Python community, as of January 2020 the latest releases of pyhf
no longer support Python 2.
The last release of pyhf
that was compatible with Python 2.7 is v0.3.4, which can be installed with
python -m pip install pyhf~=0.3
I only have access to Python 2. How can I use pyhf
?¶
It is recommended that pyhf
is used as a standalone step in any analysis, and its environment need not be the same as the rest of the analysis.
As Python 2 is not supported it is suggested that you setup a Python 3 runtime on whatever machine you’re using.
If you’re using a cluster, talk with your system administrators to get their help in doing so.
If you are unable to get a Python 3 runtime, versioned Docker images of pyhf
are distributed through Docker Hub.
Once you have Python 3 installed, see the Installation page to get started.
I validated my workspace by comparing pyhf
and HistFactory
, and while the expected CLs matches, the observed CLs is different. Why is this?¶
Make sure you’re using the right test statistic (\(q\) or \(\tilde{q}\)) in both situations.
In HistFactory
, the asymptotics calculator, for example, will do something more involved for the observed CLs if you choose a different test statistic.
I ran validation to compare HistFitter
and pyhf
, but they don’t match exactly. Why not?¶
pyhf
is validated against HistFactory
.
HistFitter
makes some particular implementation choices that pyhf
doesn’t reproduce.
Instead of trying to compare pyhf
and HistFitter
you should try to validate them both against HistFactory
.
How is pyhf
typeset?¶
As you may have guessed from this page, pyhf
is typeset in all lowercase.
This is largely historical, as the core developers had just always typed it that way and it seemed a bit too short of a library name to write as PyHF
.
When typesetting in LaTeX the developers recommend introducing the command
\newcommand{\pyhf}{\texttt{pyhf}}
If the journal you are publishing in requires you to use textsc
for software names it is okay to instead use
\newcommand{\pyhf}{\textsc{pyhf}}
Troubleshooting¶
import torch
orimport pyhf
causes aSegmentation fault (core dumped)
This is may be the result of a conflict with the NVIDIA drivers that you have installed on your machine. Try uninstalling and completely removing all of them from your machine
# On Ubuntu/Debian sudo apt-get purge nvidia*
and then installing the latest versions.