== Standard Model Effective Theory at One-Loop in QCD == ''CĂ©line Degrande, Gauthier Durieux, Fabio Maltoni, Ken Mimasu, Eleni Vryonidou & Cen Zhang'', [https://arxiv.org/abs/2008.11743 arXiv:2008.11743] The implementation is based on the Warsaw basis of dimension-six SMEFT operators, after canonical normalisation. Electroweak input parameters are taken to be G,,F,,, M,,Z,,, M,,W,,. The CKM matrix is approximated as a unit matrix, and an exact U(2),,q,, x U(2),,u,, x U(3),,d,, x (U(1),,l,, x U(1),,e,,)^3^ flavour symmetry is enforced. It notably forbids all fermion masses and Yukawa couplings except that only of the top quark. The model therefore implements the five-flavour scheme for PDFs. A new coupling order {{{NP=2}}} is assigned to SMEFT interactions. The cutoff scale {{{Lambda}}} takes a default value of 1 TeV^-2^ and can be modified along with the Wilson coefficients in the {{{param_card}}}. Operators definitions, normalisations and coefficient names in the UFO model are specified in [attachment:definitions.pdf]. The notations and normalisations of top-quark operator coefficients mostly comply with the LHC TOP WG standards of [https://arxiv.org/abs/1802.07237 1802.07237]. Note however that the flavour symmetry enforced here is slightly more restrictive than the baseline assumption there (see the [wiki:dim6top dim6top page] for more information about differences). This model has been validated at tree level against the {{{dim6top}}} implementation (see [https://arxiv.org/abs/1906.12310 1906.12310] and the [https://bazaar.launchpad.net/~rwgtdim6/mg5amcnlo/plugin_eft_contrib/files/head:/example/ comparison details]). === Current implementation === UFO model: [attachment:SMEFTatNLO_v1.0.1.tar.gz] The current implementation imposes CP conservation. In the quark sector, it focuses primarily on top-quark interactions. The light-quark current operator, qqHDH, uuHDH, ddHDH, with coefficients {{{cpq3i}}}, {{{cpqMi}}}, {{{cpu}}}, {{{cpd}}} are however included. The triple-gluon operator, with coefficient {{{cG}}}, is currently not available (see the loop-capable [wiki:GGG] implementation). Vertices including four leptons or more than four scalars are not included. Scalar and tensor {{{QQll}}} operators, with coefficients {{{ctlS3}}}, {{{ctlT3}}}, and {{{cblS3}}}, break our flavour symmetry assumption and are not available for one-loop computations. Top-quark flavour-changing interactions, not compatible with the imposed flavour symmetry, are not included (see the loop-capable [https://feynrules.irmp.ucl.ac.be/wiki/TopFCNC TopFCNC] implementation). Unlike prescribed by the LHC TOP WG, the top quark chromomagnetic-dipole operator coefficient {{{ctG}}} is normalised with a factor of the strong coupling, g,,S,,. This normalisation factor temporarily ensures compatibility with the 2.X.X series of MadGraph5_aMC@NLO but may be dropped in the future. As with every other appearance of this coupling in MadGraph5_aMC@NLO, its value is renormalisation-group evolved to the QCD renormalisation scale (set in the run_card). Counterterms required for one-loop computations are currently included up to five points. The unitary gauge (default) is required when computing anomalous quark-loop amplitudes like {{{ggZ}}}, {{{gggZ}}}, {{{ggZH}}} and {{{ggff}}}. MadGraph5_aMC@NLO does not evolve operator coefficients which are therefore kept at fixed scale {{{mueft}}} distinguished from the QCD renormalisation scale {{{MUR}}}. We recommend to use fixed renormalisation and factorisation scales (in the {{{run_card}}}), and to set {{{mueft}}} equal to those (in the {{{param_card}}}). The {{{3.0.4}}} nightly build branch of MG (bzr branch lp:~maddevelopers/mg5amcnlo/3.0.4) is required for one-loop predictions involving four-quark operators and (in general) H^2^G^2^ with coefficient {{{cpG}}} not normalised with any power of g,,S,,. It also allows for a better control over coupling orders and, in particular, for the separate computation of linear and quadratic EFT contributions at NLO. It is however only available for fixed order computations (i.e. not for event generation, with {{{fixed_order = ON}}}). Sufficiently coarse differential distributions can be obtained by implementing a !FixedOrderAnalysis in Fortran (see examples in the corresponding subdirectory). A branch allowing for the separate computation of different orders in event-generation mode (with matching to parton shower) is currently being validated. The 2.X.X series of MadGraph5_aMC@NLO should be used for event generation (i.e. beyond fixed-order computations). It can however not handle four-quark operators at one-loop. The model should in that case be loaded with the {{{no4q}}} restriction card (doing {{{import model SMEFTatNLO-no4q}}}) which excludes four-quark operator coefficients. An exception is single top-quark production in which the colour singlet {{{cQq13}}} and and octet {{{cQq83}}} are available in 2.X.X. For the latter, see however the specific instructions below about "loop filtering". ==== Version updates ==== ''The model version number can be found in the `__version__` variable at the end of `__init__.py`.'' * 2018/12/20 - v0.1: First version upload, 4F and c,,G,, operators at LO pending validation; a few minor convention tweaks required to match {{{dim6top}}} exactly. {{{decays.py}}} missing. * 2019/04/03 - v0.1: Added definitions.pdf document and uploaded a new version with a fix for restrict_default.dat * 2019/08/12 - v0.1: Uploaded a new version matching {{{dim6top}}} operator conventions, also some bugfixes and gs normalisation for {{{OtG}}} * 2020/08/24 - v1.0: Official release including notably four-quark operators at NLO. * 2020/12/16 - v1.0.1: Compatible with python3; BR for t,W,Z (SM and LO) in restriction cards to ease Madspin use; {{{no4q}}} restriction card without four-quark operators for use with MG v2. === Support === Please direct any questions to smeftatnlo-dev'''[at]'''cern'''[dot]'''ch. === Usage notes === ==== Restriction cards ==== Because of the mixture of LO/NLO compatible operators included in the model, restriction cards must be used to access the SMEFT interactions. Default loading of the model {{{ > import model SMEFTatNLO }}} will load the pure SM without any effective operators. The {{{LO}}} restriction card should be used when importing the model for LO generation: {{{ > import model SMEFTatNLO-LO }}} For NLO QCD generation, the {{{NLO}}} restriction card should be used when importing the model: {{{ > import model SMEFTatNLO-NLO }}} This invokes a restricted set of operators for which the required counterterms are implemented. ==== Coupling orders ==== We recommend specifying the full {{{QCD}}}, {{{QED}}} and {{{NP}}} orders for process generation. For example: {{{ > generate p p > t t~ QCD=2 QED=0 NP=2 [QCD] }}} generates top-quark pair production at NLO QCD, including the QCD-induced SM and the SMEFT contributions. ==== Excluding operators ==== We recommend avoiding setting values of Wilson coefficients to 0 when computing at NLO using MadGraph5_aMC@NLO. Operators should either be removed explicitly with restriction cards or set to a very small non-zero value in parameter cards, e.g., 1e-5. ==== Plugin for b-quark Yukawa coupling and operator ({{{ymb}}} and {{{cbp}}}) ==== A plugin-like modification to the model including the bbh (SM+SMEFT), bbhh and bbhhh interactions has been implemented to account for the Higgs coupling to bottom quarks. It can only be used at LO. A {{{configuration.py}}} file is included in the UFO model with a {{{bottomYukawa}}} flag set to {{{False}}} by default. Setting it to {{{True}}} restores the SM & SMEFT bottom Yukawa parameters ({{{ymb}}} and {{{cbp}}}), the bbh(h)(h) vertices, and corresponding couplings. The bottom mass parameters, {{{MB}}}, is not restored which has a percent effect on the {{{h > b b~}}} partial width. The corresponding Goldstone-boson interactions are not included, such that the extended model can only be used in unitary gauge (default). ==== !MadSpin [https://cp3.irmp.ucl.ac.be/projects/madgraph/wiki/MadSpin MadSpin] can be used to perform tree-level decays, accounting for leading-order spin correlations. Information about the branching fractions of the decayed particles should then be included already in the restriction card used. To ensure gauge invariance, MadGraph_aMC@NLO would still set the widths of external particles to zero (warning, e.g., that "For gauge cancellation, the width of 'Z' has been set to zero") but would pass the required information to !MadSpin. From version 1.0.1 of the model, distributed {{{NLO}}} and {{{LO}}} restriction cards include the branching fraction information for top-quark, Z and W bosons. These are computed in the SM, with default input parameters (Gf, MZ, MW, MT, etc.), and at tree level (consistently with the accuracy of !MadSpin). If input parameters are modified from their default values, or to include SMEFT effects, these branching fractions need to be recomputed. This can be done for a given {{{}}} by running {{{compute_widths --path= --output=}}} after having loaded the model. The {{{}}} produced should then include branching-fraction information for the specified {{{}}} that is consistent with the other parameters it contains. === Generation recipes for validated processes === Among many others, the following processes are supported at the one-loop level. Gauge invariance (see {{{help check}}} in MadGraph5_aMC@NLO) and pole cancellation have been checked explicitly for those (setting all widths set to zero is then required). For complicated processes and in case of doubts, please contact the authors. ==== QCD ==== {{{ > p p > j j QED=0 QCD=2 NP=2 [QCD] }}} ==== Drell Yan ==== {{{ > p p > mu+ mu- QCD=0 QED=2 NP=2 [QCD] > p p > mu+ vm QCD=0 QED=2 NP=2 [QCD] > p p > W+ j $$ t QCD=1 QED=1 NP=2 [QCD] > p p > W- j $$ t~ QCD=1 QED=1 NP=2 [QCD] > p p > Z j QCD=1 QED=1 NP=2 [QCD] }}} ==== Multi-boson production ==== ''quark-initiated'' {{{ > p p > W+ W- QED=2 QCD=0 NP=2 [QCD] > p p > W+ Z QED=2 QCD=0 NP=2 [QCD] > p p > Z Z QED=2 QCD=0 NP=2 [QCD] }}} ''loop-induced'' {{{ > g g > W+ W- QED=2 QCD=2 NP=2 [QCD] > g g > Z Z QED=2 QCD=2 NP=2 [QCD] > g g > W+ W- Z QED=3 QCD=2 NP=2 [QCD] > g g > Z Z Z QED=3 QCD=2 NP=2 [QCD] }}} ==== Higgs production ==== ''loop-induced'' {{{ > g g > H QED=1 QCD=2 NP=2 [QCD] > g g > H H QED=2 QCD=2 NP=2 [QCD] > g g > H H H QED=3 QCD=2 NP=2 [QCD] > g g > H j QED=1 QCD=3 NP=2 [QCD] }}} ==== Top quark production ==== {{{ > e+ e- > t t~ QED=2 QCD=0 NP=2 [QCD] > p p > t t~ QED=0 QCD=2 NP=2 [QCD] > p p > t t~ h QED=1 QCD=2 NP=2 [QCD] > p p > t t~ Z QED=1 QCD=2 NP=2 [QCD] > p p > t t~ W+ QED=1 QCD=2 NP=2 [QCD] > p p > t W- $$ t~ QED=1 QCD=1 NP=2 [QCD] > p p > t W- j $$ t~ QED=1 QCD=2 NP=2 [QCD] > p p > t j $$ W- QED=2 QCD=0 NP=2 [QCD] > p p > t h j $$ W- QED=3 QCD=0 NP=2 [QCD] > p p > t Z j $$ W- QED=3 QCD=0 NP=2 [QCD] > p p > t a j $$ W- QED=3 QCD=0 NP=2 [QCD] }}} When generating one of the last four processes ({{{tj}}},{{{thj}}},{{{tZj}}},{{{taj}}}) with the {{{cQq83}}} operator coefficient, all loops including a gluon have to be allowed. This can be achieved through "loop filtering", with the following ad-hoc modification of MadGraph5_aMC@NLO: {{{ === modified file 'madgraph/loop/loop_diagram_generation.py' --- madgraph/loop/loop_diagram_generation.py 2020-03-11 09:28:14 +0000 +++ madgraph/loop/loop_diagram_generation.py 2020-04-03 21:08:18 +0000 @@ -384,7 +384,7 @@ # By default the user filter does nothing if filter is not set, # if you want to turn it on and edit it by hand, then set the # variable edit_filter_manually to True - edit_filter_manually = False + edit_filter_manually = True if not edit_filter_manually and filter in [None,'None']: return if isinstance(filter,str) and filter.lower() == 'true': @@ -415,6 +415,10 @@ raise InvalidCmd("The user-defined filter '%s' did not"%filter+ " returned the following error:\n > %s"%str(e)) + # requires a gluon to run in all loops + if 21 not in diag.get_loop_lines_pdgs(): + valid_diag = False + # if any([abs(pdg) not in range(1,7) for pdg in diag.get_loop_lines_pdgs()]): # valid_diag = False @@ -538,7 +542,7 @@ if valid_diag: newloopselection.append(diag) - self['loop_diagrams']=newloopselection + #self['loop_diagrams']=newloopselection # To monitor what are the diagrams filtered, simply comment the line # directly above and uncomment the two directly below. # self['loop_diagrams'] = base_objects.DiagramList( }}} The width of the W may also need to be set to zero, to ensure precise gauge invariance and pole cancellation. ==== Analytic validation ==== The following loop computations of amplitudes relevant for several processes have been cross-checked analytically: * ttbar: tt, gg, ggg, gtt, ggtt * single top/decay: tbW, 4f * ttV: ttV, ggV, gggV, gttV * ttH: ggh, gggh, htt, ghtt