SciPost logo

SciPost Submission Page

Kolya: an open-source package for inclusive semileptonic B decays

by Matteo Fael, Ilija S. Milutin, K. Keri Vos

Submission summary

Authors (as registered SciPost users): Matteo Fael
Submission information
Preprint Link: scipost_202410_00033v1  (pdf)
Code repository: https://gitlab.com/vcb-inclusive/kolya
Data repository: https://zenodo.org/records/10818194
Date submitted: 2024-10-14 18:54
Submitted by: Fael, Matteo
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
Specialties:
  • High-Energy Physics - Experiment
  • High-Energy Physics - Phenomenology
Approach: Theoretical

Abstract

We introduce the code kolya, an open-source tool for phenomenological analyses of inclusive semileptonic B meson decays. It contains a library to compute predictions for the total rate and various kinematic moments within the framework of the heavy quark expansion, utilizing the so-called kinetic scheme. The library currently includes power corrections up to $1/m_b^5$. All available QCD perturbative corrections are implemented via interpolation grids for fast numerical evaluation. We also include effects from new physics parameterised as Wilson coefficients of dimension-six operators in the weak effective theory below the electroweak scale. The library is interfaced to CRunDec for easy evaluation of the quark masses and strong coupling constant at different renormalization scales. The library is developed in Python and does not require compilation. It can be used in an interactive Jupyter notebook session.

Current status:
In refereeing

Reports on this Submission

Report #1 by Danny van Dyk (Referee 1) on 2024-11-4 (Invited Report)

Strengths

1. Excellent documentation of the underlying formulas used to evaluate the various observables.
2. Useful and timely provision of a standard code to predict observables in inclusive B decays.

Weaknesses

1. Minor weaknesses in the documentation, addressed in the detailed report.

Report

The writeup discussed a novel and highly useful piece of open source software for the calculation of observables in inclusive B meson decay.
The physics basis for the code is very well documented. Simple examples are provided as part of the manuscript, with more complex examples available from the Gitlab repository.

I think this paper should be accepted for publication, pending some minor corrections and addendums listed under "requested changes".

Moreover, I have the following comments on the interface / code / package. Addressing the following should *not* be considered a prerequisite for accepting the paper.

- kolya is not (yet?) installable from PyPI. I would highly recommend uploading a Python wheel to pypi, to facilitate the installation process.

- Importing kolya ("import kolya") for the first time takes a very long time (longer than 14min on my laptop (Intel i7-1360P)). Based on the comments in the installation section of the paper, I suspect this is due to the just-in-time compilation using numba. I recommend reconsidering the use of numba and consider the use of cython instead. This would enable building a natively-compiled backend code only once.

- Inspecting an object, such as return value of "par = kolya.parameters.physical_parameters()" can be achieved using the "show()" method. While useful, it is not very python-like. I highly recommend adding a Jupyter / IPython / Python representation to the classes that the users are going to be exposed most. In Jupyter, this would allow to simply "display(par)", which is done automatically if only the object is invoked at the end of a Jupyter cell.

- The HQE parameters ("kolya.parameters.HQE_Parameters") do not have sensible default values. I recommend adding a function (similar to FLAG2024 for the general parameter class that provided sensible default values.)

- I am a bit puzzled by the handling of the Wilson coefficients. Why is Vcb, which is also a parameter in the EFT Lagrangian, not part of the object parametrizing the Lagrangian? (I.e., wc) When I change Vcb, I implicitly change the definition of all Wilson coefficients.

Requested changes

1. The authors mention in the abstract that kolya ``can be used in an interactive Jupyter notebook session''. This is of course true for most Python libraries. My question is: has it been designed to use in a Jupyter notebook? I think the answer is "no" at the present. I would remove this line from the abstract.

2. The 2nd sentence below eq. (11) starts with a mathematical symbol.

3. Below eq. (41), the dependence of the observables on the ratio m_c/m_b is discussed. The trick used to make the expressions more managable is quite neat. I think the text would benefit from a comment on the numerical equivalence of this approach and evaluation f at the value of m_c^pole/m_b^pole as determined from the kinematic / MSbar masses. If there is no numerical equivalencen, it would be useful to understand what precision is achieved by the replacement.

4. It should be documented that the Wilson coefficient parameters are only parametrizing the BSM contribution to the effective Lagrangian, i.e., it is C_V_L^BSM, and the code uses C_V_L = 1.0 * A_ew + C_V_L^BSM. Crucial question: Is the electroweak correction included for BSM contributions? This should also be documented.

Recommendation

Ask for minor revision

  • validity: top
  • significance: high
  • originality: high
  • clarity: high
  • formatting: excellent
  • grammar: excellent

Login to report or comment