This major release of wilson brings two main new features: one-loop SMEFT-WET matching and the integration of the `wcxf-python` package.
New feature: one-loop SMEFT-WET matching
Thanks to the full calculation of the one-loop matching of SMEFT onto WET published in [arXiv:1908.05295](https://arxiv.org/abs/1908.05295), it was possible to implement this one-loop matching in wilson (#35).
Using an automated conversion of the Mathematica notebook provided by the authors reduces the risk of typing mistakes and also allowed a powerful cross-check, namely that the tree-level matching in the previous version agrees with the new result when switching of one-loop contributions. This check succeeded after correcting a mistake in the tree-level matching paper (9ac1631c3d138c90714a240f84036f9e1861cb54) and is now included as a unit test.
Note that the current implementation of the one-loop matching is fairly slow, of the order of 0.5 seconds. Therefore, one-loop matching contributions **are not switched on by default**, but can be included by setting the option `smeft_matching_order` to 1 (default: 0, i.e. tree). For instance, setting one-loop matching as default for a session is achieved with
python
import wilson
wilson.Wilson.set_default_option('smeft_matching_order', 1)
API change: WCxf
The `wcxf-python` package provides a low-level API to interact with [WCxf](https://wcxf.github.io/) files or data structures and predates wilson. When wilson entered the stage, it provided the translators and matchors for this package. This generated a circular dependency that became harder and harder to maintain. Thefore we have decided to merge the `wcxf-python` package into wilson itself. For this 2.0 release, `wcxf` now simply lives as an unmodified submodule of `wilson` and all existing code should continue working by replacing `import wcxf` with `from wilson import wcxf`. Also the command line scripts should work unchanged. The `wcxf` PyPI package itself will be turned into an empty wrapper and is no longer required.
New SMEFT basis
A SMEFT basis that is a hybrid between the "Higgs basis" and the "Warsaw up" basis has been added, along with the required translators.
Bugs fixed
- The error in the SMEFT-WET tree-level matching paper mentioned above was fixed (9ac1631c3d138c90714a240f84036f9e1861cb54)
- The WET operators `VeeLL` and `VnunuLL` were missing symmetry factors in the SMEFT-WET matching (8e892e659187d5595cf7fded145f1e3faaa5ec2b)
- The down-type dipole operators (`dG`, `dgamma`) were not correctly rotated to the mass basis in the SMEFT-WET matching (412cfa0494058f6fdae45883fcfccdc05c947b65)
- The `match_run` method was unnecessarily slow when only translation was necessary (d147e309d6ec5c4d43cfda3c0e797d3375111478)