The most basic functionality of flavio is to compute predictions for flavour observables in the Standard Model (SM) and beyond. While there is much freedom to change various input parameters and choose between different implementations, you can also just trust the default choices and immediately get numbers.
To get started, just import the package:
To get the central value of the (time-integrated) branching ratio of $B_s\to\mu^+\mu^-$ in the SM, just type
All observables are defined by strings like this. You can look at the complete list of observables currently defined.
Some observables depend on additional parameters, like a dilepton invariant mass squared $q^2$. To get the differential branching ratio of $B^+\to K^+\mu^+\mu^-$ at $q^2=3\,\text{GeV}^2$, type
Note that all dimensionful qunatities in flavio are always assumed to be in units of GeV to the appropriate power.
Uncertainties of predictions are defined by the uncertainties of input parameters. This means that also predictions from higher orders or unknown hadronic effects must be parametrized in terms of parameters with uncertainties.
To get the uncertainty of the SM prediction on the above observables, use
This works by generating random values for all input parameters, computing the
observable for all of them, and extracting the standard deviation of the spread
of values. Since this procedure involves random numbers, its precision depends
on the number of random numbers. By default, the function uses 100 iterations.
If you need more precision (or have more time), you can increase this by
specifying the optional parameter N=200
, for instance. Note that the relative
error of the uncertainty as a function of $N$ is given by
so the default setting returns the uncertainty up to a relative precision of 7%.
You can also look at the contribution of individual parameters to the total error budget. Use
to get a dictionary with relative uncertainties stemming from the modification of individual parameters. For more info about the parameters, look at the full list.
If you have matplotlib
installed, you can also visualize the error budget
as a pie chart with a simple command:
It should look something like this:
Correlated parameters will be grouped into a single slice. Note that the total uncertainty is the squared sum of the individual uncertainties, so the relative size of the wedges does not correspond to the relative contribution to the total uncertainty.