1 Introduction

The relic density of cold dark matter (CDM) in the cosmological standard (\(\varLambda \)CDM) model

$$\begin{aligned} \varOmega _\textrm{CDM} h^2 ~=~ 0.120\pm 0.001 \end{aligned}$$
(1)

as determined from Planck data [1] is one of the most stringent constraints on the nature and properties of DM. In the canonical freeze-out mechanism, today’s DM abundance may be predicted for a given particle physics framework with a suitable DM candidate through all possible (co)annihilation processes of the thermal relic into Standard Model (SM) particles, and the most important channels are those with two particles in the final state [2, 3].

Given the sub-percent accuracy of the Planck observation in Eq. (1), matching the experimental and theoretical uncertainties clearly calls for the evaluation of the associated cross sections beyond the tree-level approximation. The impact of higher-order corrections to DM annihilation, both strong and electroweak, has been discussed within many well-motivated and intensely studied extensions of the SM such as the minimal supersymmetric Standard Model (MSSM) [4,5,6,7,8,9,10,11,12,13,14,15,16,17], the next-to-minimal supersymmetric Standard Model (NMSSM) [18, 19], or the inert doublet model [20,21,22]. The relic density can in addition potentially receive large corrections from non-perturbative effects like the Sommerfeld enhancement coming from the exchange of light mediators between the annihilating particles [23,24,25] or the formation of bound-states [26,27,28,29].

In addition to the increased precision, a further advantage of full loop calculations is that they allow for a systematical evaluation of the theoretical uncertainties from missing higher-order corrections through variations of the renormalisation scheme as well as the renormalisation scale [16, 30].

The need for an increased theoretical precision extends to the calculation of indirect detection signals from present-day DM annihilation processes [31,32,33,34] as well as to DM-nucleon interactions in the context of direct DM detection. Calculations of higher-order corrections to the corresponding scattering cross sections have been computed in many UV-complete models like the MSSM [35,36,37,38,39,40,41], the inert doublet model [20, 42], simple Higgs-portal models [43,44,45,46], the next-to-minimal two Higgs doublet model [47], a vector DM model [48], the singlet-extended two Higgs doublet model [49], but also in simplified fermionic DM models [50,51,52], or frameworks described through effective operators [53, 54].

In this context, we present in this paper the public release of the DM precision code DM@NLO (“Dark Matter at Next-to-Leading Order”), which allows to numerically calculate the total DM (co)annihilation as well as DM-nucleon scattering cross-sections at next-to-leading order (NLO) in the strong coupling constant for most (co)annihilation channels within the MSSM. In addition to the fixed-order one-loop calculation, the code includes several resummed corrections, such as the SUSY-QCD \(\varDelta m_b\) resummation and the Sommerfeld effect from the exchange of gluons or photons between the incoming particles.

Additional uncertainties not addressed within the context of DM@NLO stem from possible non-standard cosmologies [55], the neglect of multi-body final states [56], uncertainties of the SM effective number of degrees of freedom [57], differences in the numerical computation of the physical mass spectrum of the BSM model under consideration [58], thermal corrections [59], or the early-kinetic decoupling effect [60, 61]. Moreover, on the side of the experimental analysis, the measured DM relic density relies on the the six-parameter cosmological concordance model. Including additional physical parameters [62] or relaxing the assumption of a constant comoving DM density [63] may increase the allowed range of the DM density by up to about 20%.

In the remainder of this manuscript, we begin by briefly summarising in Sect. 2 all relevant formulae for the calculation of the DM relic density in the standard freeze-out scenario and the spin-independent as well as spin-dependent elastic DM-nucleon scattering cross sections which are necessary to correctly interpret the DM@NLO output. The different components of a one-loop cross section as well as the Sommerfeld enhancement effect are described in Sect. 3. Section 4, Appendix A, and Appendix B are dedicated to the installation and running of the program. An illustrative MSSM scenario is defined and analysed in Sect. 5. We summarise this paper in Sect. 6.

2 Dark matter theory

2.1 Standard calculation of the relic density

The standard procedure [2, 64, 65] of calculating the freeze-out abundance of a single relic particle is usually based on the assumptions that (i) the total (co)annihilation cross-section is governed by \(2 \rightarrow n\) annihilation processes of DM into SM particles, (ii) all dark sector particles are in kinetic equilibrium with the SM thermal bath at the photon temperature T due to sufficiently large elastic scattering rates between both sectors, (iii) these share the same chemical potential and (iv) are highly non-relativistic so that in-medium as well as finite temperature effects are negligible. This means in particular that even for \(n>2\), SM particles are assumed to obey a Maxwell-Boltzmann distribution. In this case, the evolution of the DM number density \(n_\chi \) over time t can be described with the single Boltzmann equation

$$\begin{aligned} \frac{\textrm{d}n_\chi }{\textrm{d}t} + 3 H n_\chi ~=~ \langle \sigma _{\textrm{ann} } v \rangle \Big ( (n_\chi ^{\textrm{eq}})^2 - n_\chi ^2 \Big ) \end{aligned}$$
(2)

with the equilibrium number density

$$\begin{aligned} n_i^{\textrm{eq}} ~=~ \frac{g_i T m_i^2}{(2\pi )^2} \, K_2(m_i/T) \end{aligned}$$
(3)

of a particle species i with mass \(m_i\) and \(g_i\) degrees of freedom for a vanishing chemical potential. The Hubble expansion rate H is usually parameterised through the effective number of SM energy and entropy degrees of freedom. \(K_i\) denote the modified Bessel functions of order i. Particle physics enters through the thermally averaged annihilation cross section

$$\begin{aligned} \langle \sigma _{\textrm{ann}} v \rangle ~=~ \sum _{a,b} \langle \sigma _{a b\rightarrow X} v\rangle \frac{n_a^{\textrm{eq}}}{n_\chi ^{\textrm{eq}}} \frac{n_b^{\textrm{eq}}}{n_\chi ^{\textrm{eq}}} \end{aligned}$$
(4)

including all possible \(2\rightarrow n\) (co)annihilation channels of dark sector particles into a set X of n SM particles. For a given initial-state configuration, the thermal average

$$\begin{aligned} \langle \sigma _{ab\rightarrow X} v\rangle&= \frac{1}{2 \, T \,m_a^2 m_b^2 \, K_2(m_a/T) \, K_2(m_b/T)} \nonumber \\&\quad \times \! \int \! \textrm{d}{s} \sqrt{s} \, p^2_{\textrm{cm}} \sigma _{ab\rightarrow X}(p_{\textrm{cm}}) K_1(\sqrt{s}/T) \end{aligned}$$
(5)

can be cast into a single integral over the centre-of-momentum energy \(\sqrt{s} = \sqrt{m_a^2 + p_{\textrm{cm}}^2} + \sqrt{m_b^2 + p_{\textrm{cm}}^2}\) with \(p_{\textrm{cm}}\) being the relative annihilation momentum. From the present-day number density \(n_\chi ^0\), the theoretically predicted dark matter relic density is obtained via

$$\begin{aligned} \varOmega _\chi ~=~ \frac{ m_\chi n^0_\chi }{\rho _c} \end{aligned}$$
(6)

with \(\rho _c\) being the critical density. The task of numerically integrating Eq. (2) in conjunction with computing the thermal average in Eq. (4) for a model dependent annihilation cross section can be performed with a high accuracy using adequate numerical codes, e.g., MicrOMEGAs[66], SuperIso Relic [67], MadDM [68], DarkSUSY[69] or DRAKE [70], which can even go beyond the assumption of kinetic equilibrium.

2.2 Calculation of the direct detection rate

Results of direct dark matter detection experiments are usually presented as exclusion limits on the spin-dependent (SD) and spin-independent (SI) DM-nucleon scattering cross-sections, \(\sigma _N^{\textrm{SD}}\) and \(\sigma _N^{\textrm{SI}}\), as a function of the DM mass. However, as the typical energies in a direct detection experiment are much smaller than the heavy particle masses of the microscopic theory mediating the interaction between DM and the constituents of a nucleon, it is customary to perform the calculation in the language of an effective field theory [71,72,73,74], i.e. by integrating out those heavy mediators.

The spin-independent cross section

$$\begin{aligned} \sigma _N^{\textrm{SI}} = \frac{\mu _N^2}{\pi } |g_N^{\textrm{SI}}|^2 \end{aligned}$$
(7)

is then expressed through the SI effective DM coupling to nucleons \(g_N^{\textrm{SI}}\) with \(\mu _N = m_N m_\chi /(m_N + m_\chi )\) being the reduced mass of the DM-nucleon system. The effective coupling is computed as

$$\begin{aligned} g_N^{\textrm{SI}} ~=~ \sum _q \langle N|\bar{q} q|N\rangle \alpha ^{\textrm{SI}}_q \,, \end{aligned}$$
(8)

where the sum runs over all six quark flavors q and \(\alpha ^{\textrm{SI}}_q\) is the Wilson coefficient describing the SI interaction between quarks and the DM particle. The nuclear matrix element \(\langle N|\bar{q} q|N\rangle \) can be qualitatively understood as the probability of finding the quark q inside the nucleon N and is commonly expressed through the scalar nuclear form factors \(f^N_{Tq}\) as

$$\begin{aligned} \langle N|m_q \bar{q} q|N\rangle ~=~ f^N_{Tq} \, m_N \end{aligned}$$
(9)

with the quark mass \(m_q\) and the nucleon mass \(m_N\). The scalar coefficients \(f^N_{Tq}\) are determined from experiment and lattice QCD and are another source of theoretical uncertainties. To highlight the latter point, we show in Table 1 the associated values that are hardcoded in DM@NLO and the two other DM packages DarkSUSY and MicrOMEGAs. The heavy quark form factors \(f^N_{Tq}\) are obtained from those related to light quarks via the relation [75]

$$\begin{aligned} f_{Tc}^N ~=~ f_{Tb}^N ~=~ f_{Tt}^N ~=~ \frac{1}{27} \bigg (1 - \sum _{q=u,d,s} f_{Tq}^N \bigg ) \,. \end{aligned}$$
(10)

The SD scattering cross section for DM on a single nucleon is given by

$$\begin{aligned} \sigma _N^{\textrm{SD}} ~=~ \frac{3 \mu _N^2}{\pi } \big | g_N^{\textrm{SD}} \big |^2 \,, \end{aligned}$$
(11)

where the effective SD coupling \(g_N^{\textrm{SD}}\) between DM and nucleons reads

$$\begin{aligned} g_N^{\textrm{SD}} ~=~ \sum _{q=u,d,s} (\varDelta q)_N \, \alpha ^{\textrm{SD}}_q \end{aligned}$$
(12)

with the SD Wilson coefficient \(\alpha ^{\textrm{SD}}_q\) describing the DM-quark interaction. In contrast to the SI case, the sum runs only over the light quarks u, d and s, as these carry the largest fraction of the nucleon spin which in turn is quantified through the axial-vector form factors \((\varDelta q)_N\). The corresponding numerical values in DM@NLO are identified with those in MicrOMEGAs 5.3, given by

$$\begin{aligned} {\begin{matrix} (\varDelta u)_p ~&{}=~ (\varDelta d)_n ~=~ 0.842 \,, \\ (\varDelta d)_p ~&{}=~ (\varDelta u)_n ~=~ -0.427 \,, \\ (\varDelta s)_p ~&{}=~ (\varDelta s)_n ~=~ -0.085 \,. \end{matrix}} \end{aligned}$$
(13)
Table 1 Scalar nuclear form factors \(f_{Tq}^N\) used in DM@NLO based on Ref. [76], DarkSUSY 6.4 based on Ref. [77] and MicrOMEGAs 5.3 [66]

For a detailed discussion of direct detection in NLO SUSY-QCD, we refer the reader to Ref. [39].

3 Dark matter annihilation beyond tree-level

At next-to-leading order (NLO), the tree-level DM (co)annihilation cross-section is extended by the contribution

$$\begin{aligned} \varDelta \sigma ^{\textrm{NLO}} ~=~ \int _n\textrm{d}{\sigma ^{\textrm{V}}} + \int _{n+1} \textrm{d}{\sigma ^{\textrm{R}}} \,, \end{aligned}$$
(14)

which contains virtual (\(\textrm{d}{\sigma ^{\textrm{V}}}\)) and real (\(\textrm{d}{\sigma ^{\textrm{R}}}\)) corrections, contributing at the same order in the coupling constant. In the present work, we focus on one-loop corrections in SUSY-QCD at order \(\alpha _s\), including the emission of a real gluon. Note that, for certain couplings, we include the resummation of higher-order SUSY-QCD contributions as discussed in Refs. [5, 9, 10].

3.1 Renormalisation

The virtual corrections are plagued by ultraviolet (UV) divergences whose removal requires a (numerically well behaved) renormalisation scheme, coming along with a suitable regularisation prescription. For the regularisation, the SUSY-preserving dimensional reduction (DR) scheme [78, 79] is employed, i.e. the relevant loop integrals are evaluated in \(D = 4 - 2\epsilon \) space-time dimensions.

When it comes to the renormalisation of the MSSM, the squark masses have to be renormalised carefully since the stop and sbottom sectors have to be treated simultaneously due to the fact that the up- and down-type squarks share the common soft breaking parameter \(M_{\tilde{q}}\) as a result of the \({\text {SU}}(2)_L\) gauge symmetry. The squark mass matrix can be diagonalised,

$$\begin{aligned} U^{\tilde{q}} \begin{pmatrix} m^2_{LL} &{} m^2_{LR} \\ m^2_{RL} &{} m^2_{RR} \end{pmatrix} (U^{\tilde{q}})^\dag = \begin{pmatrix} m^2_{\tilde{q}_1} &{} 0 \\ 0 &{} m^2_{\tilde{q}_2} \end{pmatrix} \end{aligned}$$
(15)

with the two physical masses \(m^2_{\tilde{q}_1}\) and \(m^2_{\tilde{q}_2}\) being the eigenvalues of the non-diagonal mass matrix with the entries

$$\begin{aligned}&m^2_{LL} = M^2_{\tilde{Q}} + (I^{3 L}_q - e_q s_W^2) \cos 2\beta m_Z^2 + m_q^2 \,, \end{aligned}$$
(16)
$$\begin{aligned}&m^2_{RR} = M^2_{\tilde{U},\tilde{D}} + e_q s_W^2 \cos 2\beta m_Z^2 + m_q^2 \,, \end{aligned}$$
(17)
$$\begin{aligned}&m^2_{LR} = m^2_{RL} = m_q (A_q - \mu (\tan \beta )^{-2 I^{3L}_q}) \,. \end{aligned}$$
(18)

Out of the eleven parameters \(M_{\tilde{Q}}\), \(M_{\tilde{U}}\), \(M_{\tilde{D}}\), \(A_t\), \(A_b\), \(m_{\tilde{t}_1}\), \(m_{\tilde{t}_2}\), \(m_{\tilde{b}_1}\), \(m_{\tilde{b}_2}\), \(\theta _{\tilde{t}}\) and \(\theta _{\tilde{b}}\) only five are completely independent. As the renormalisation scheme should be applicable to all (co)annihilation channels with squarks in a leading role, we replace the soft SUSY-breaking masses \(M_{\tilde{Q}}\), \(M_{\tilde{U}}\), \(M_{\tilde{D}}\) as input parameters by the physical on-shell masses \(m_{\tilde{b}_1}\), \(m_{\tilde{b}_2}\) and \(m_{\tilde{t}_1}\). The three aforementioned soft parameters are then fixed through the requirement that Eq. (15) holds even at the one-loop order which, by inverting the corresponding eigenvalue equations, results in two possible solutions,

$$\begin{aligned} m^2_{LL}&= \frac{m^2_{\tilde{q}_1} + m^2_{\tilde{q}_2}}{2} \pm \frac{1}{2} \sqrt{(m_{\tilde{q}_1}- m_{\tilde{q}_2})^2 - 4 m_{LR}^4} \,, \end{aligned}$$
(19)
$$\begin{aligned} m^2_{RR}&= \frac{m^2_{\tilde{q}_1} + m^2_{\tilde{q}_2}}{2} \mp \frac{1}{2}\sqrt{(m_{\tilde{q}_1}- m_{\tilde{q}_2})^2 - 4 m_{LR}^4} \,, \end{aligned}$$
(20)

for the diagonal entries of the mass matrix. Consequently, there are two possible values for \(M_{\tilde{Q}}\), \(M_{\tilde{U}}\), and \(M_{\tilde{D}}\). However, not both of them may yield a numerically stable renormalisation scheme, the reason being that the diagonalisation may not correctly reproduce the mass of the lighter stop used as an input value, and, more importantly, the counterterm belonging to the heavier stop mass \(\delta m_{\tilde{t}_2} \sim (U_{21}^{\tilde{q}} U_{12}^{\tilde{q}})^{-1}\) may become singular for vanishing off-diagonal elements of the squark mixing matrix. The same problem might occur in the counterterm related to the squark mixing angle \(\delta \theta _{\tilde{q}} \sim (U_{11}^{\tilde{q}} U_{22}^{\tilde{q}} + U_{12}^{\tilde{q}} U_{21}^{\tilde{q}})^{-1}\). To avoid these issues, a scheme is defined as numerically stable if the following three conditions are fulfilled:

  • \(|m^\textrm{out}_{\tilde{t}_1} - m^\textrm{in}_{\tilde{t}_1}|/m^\textrm{in}_{\tilde{t}_1}< 10^{-5}\)  ,

  • \(|\textrm{Re} \, U_{11}^{\tilde{q}} U_{21}^{\tilde{q}}| >10^{-4}\)  ,

  • \(|\textrm{Re} \, (U_{11}^{\tilde{t}} U_{22}^{\tilde{t}} + U_{12}^{\tilde{t}} U_{21}^{\tilde{t}})| >10^{-4}\)  .

Otherwise a scheme is declared as invalid (unstable). Given that both solutions are compatible, by default the solution is chosen where the dependent stop mass \(m_{{\tilde{t}_2}}\) is closer to the corresponding physical value.

In a series of previous analyses [11,12,13, 15, 17], the following three renormalisation schemes, adapted to the present situation of DM (co)annihilation, have been introduced:

  1. 0:

    \(m_b\), \(m_t\), \(m_{\tilde{f}}\), \(\theta _{\tilde{f}}\), \(A_f\) are all \(\smash {\overline{\textrm{DR}}}\) parameters.

  2. 1:

    \(m_b\), \(A_b\) and \(A_t\) are \(\smash {\overline{\textrm{DR}}}\) input parameters whereas \(m_t\), \(m_{\tilde{t}_1}\) \(m_{\tilde{b}_1}\) and \(m_{\tilde{b}_2}\) are on-shell (OS) masses. \(\theta _{\tilde{t}}\), \(\theta _{\tilde{b}}\) and \(m_{{\tilde{t}_2}}\) are then dependent quantities.

  3. 2:

    \(m_t\), \(m_b\), \(A_b\) and \(A_t\) are \(\smash {\overline{\textrm{DR}}}\) input parameters and \(m_{\tilde{t}_1}\), \(m_{\tilde{b}_1}\) and \(m_{\tilde{b}_2}\) are OS masses. \(\theta _{\tilde{t}}\), \(\theta _{\tilde{b}}\) and \(m_{{\tilde{t}_2}}\) are then dependent quantities.

The hybrid on-shell/\(\smash {\overline{\textrm{DR}}}\) scheme 1, which resembles the RS2 scheme presented in Ref. [80], is the recommended option, whereas the other two schemes are well suited for the estimation of theoretical uncertainties from scheme variations. The integration of an automated selection of the best renormalisation scheme as, e.g., discussed in Ref. [81] is left for a future update.

3.2 Infrared treatment

The real corrections on the other hand suffer from infrared (IR) divergent terms occurring in the soft or collinear phase-space regions which cancel against those singularities appearing in the one-loop diagrams of the virtual corrections. To make the analytic cancellation manifest and allow for the numerical integration over the real phase-space, we choose within DM@NLO the Catani–Seymour dipole subtraction method [82, 83] for massive initial-state particles [84] over phase-space slicing methods [85,86,87]. This subtraction technique is based on the introduction of a local counterterm \(\textrm{d}{\sigma ^{\textrm{A}}}\) that cancels the singularities in the real emission matrix element pointwise and is at the same time simple enough such that the integrals over the singular region can be performed analytically and the IR divergences appear as poles of the form \(\varepsilon ^{-1}\) and \(\varepsilon ^{-2}\). The whole procedure can be schematically captured in the equation

$$\begin{aligned} \varDelta \sigma ^{\textrm{NLO}}&= \int _n \left[ \textrm{d}{\sigma ^{\textrm{V}}} + \int _1 \textrm{d}{\sigma ^{\textrm{A}}} \right] _{\varepsilon =0} \nonumber \\&\quad + \int _{n+1} \Big [\textrm{d}{\sigma _{\varepsilon =0}^{\textrm{R}}} - \textrm{d}{\sigma _{\varepsilon =0}^{\textrm{A}}}\Big ] \end{aligned}$$
(21)

and has the advantage over the slicing approach that no introduction of an arbitrary cutoff value on the energy or emission angle of the emitted gluon is required. This makes subtraction methods in general more numerically stable and therefore better suited for parameter space scansFootnote 1.

3.3 Intermediate on-shell resonance subtraction

Within the real emission contribution to the process \(\tilde{\chi }^0_n \tilde{t}_i \rightarrow b W^+\), the internal top propagator can become on-shell if the collisional energy \(\sqrt{s}\) exceeds the top mass \(m_t\). To cure the singularity, we follow the “Prospino scheme” defined in Refs. [88, 89] and substitute the top propagator with the Breit–Wigner form, according to

$$\begin{aligned} \frac{1}{p^2 - m^2_t} ~\rightarrow ~ \frac{1}{p^2 - m^2_t + i m_t \varGamma _t} \,, \end{aligned}$$
(22)

in the resonant part \(\mathcal {M}_\textrm{r}\) of the total amplitude \(\mathcal {M}_\textrm{tot} = \mathcal {M}_\textrm{r} + \mathcal {M}_\textrm{nr}\), whereas the non-resonant piece \(\mathcal {M}_\textrm{nr}\) remains unchanged. Since the corresponding process \(\tilde{\chi }^0_n \tilde{t}_i \rightarrow t g\) is already accounted for in the calculation of the neutralino relic density, the contribution from the leading order on-shell production of a top with the subsequent decay into a bottom quark and a W-boson is removed locally through the replacement

$$\begin{aligned} \big | \mathcal {M}_\textrm{r} \big |^2 ~\rightarrow ~ \big | \mathcal {M}_\textrm{r} \big |^2 - \frac{m^2_t \varGamma ^2_t}{(p^2 - m^2_t)^2 + m^2_t \varGamma ^2_t} \big | \mathcal {M}_\textrm{r} \big |^2_{p_t^2=m_t^2} \end{aligned}$$
(23)

with the physical top width \(\varGamma _t\). This procedure has the advantage that it retains the interference \(\textrm{Re}(\mathcal {M}^*_\textrm{r} \mathcal {M}_\textrm{nr})\) containing only one on-shell propagator and thus finite principal-value integrals. However, to stabilise the numerical integration, we use a small artificial top width \(\varGamma _t = 10^{-3}\cdot m_t\) in the interference part instead of the physical width.

3.4 Sommerfeld enhancement

The Sommerfeld enhancement is an elementary quantum mechanical effect that increases (decreases) annihilation cross sections for small relative velocities in the presence of an attractive (repulsive) long-range potential affecting the incoming particles. From a field theory point of view, this effect is described by ladder diagrams involving the exchange of light mediators with some coupling \(\lambda \) to the initial particles. More quantitatively, the Sommerfeld factor

$$\begin{aligned} S_0^{[\textbf{R}]} ~=~ \big | \phi ^{[\textbf{R}]}(0) \big |^2 \end{aligned}$$
(24)

is obtained as a solution \(\phi (\textbf{r})\) evaluated at the origin \(\textbf{r}=0\) of the stationary Schrödinger equation for the potential describing the interaction of the annihilating particles transforming under the representation \(\textbf{R}\) of the corresponding force carriers. For an s-wave dominated annihilation process, the Sommerfeld factor simply multiplies the perturbative tree-level cross section giving the Sommerfeld corrected cross section

$$\begin{aligned} \sigma ^{\textrm{Som}} = \sum _{\textbf{R}} S_0^{[\textbf{R}]} \sigma ^{\textrm{Tree}}_{\textbf{R}}\, , \end{aligned}$$
(25)

where the sum runs over all irreducible representations contained in the decomposition of the initial particle pair. In this convention for the Sommerfeld factor, the free wave-function is normalised to one \(|\phi _0^{[\textbf{R}]}(0)|^2=1\) to ensure that \(\sigma ^{\textrm{Som}} \rightarrow \sigma ^{\textrm{Tree}}\) is fulfilled if the interaction governing the enhancement effect is turned off (\(\lambda \rightarrow 0\)). When combining the Sommerfeld effect with the full \(\mathcal {O}({\lambda ^2})\) correction, one has to be careful to not overcount the single mediator exchange contained in both calculations. Therefore, we make the decision to match both by removing the \(\mathcal {O}({\lambda ^2})\) contribution from the Sommerfeld factor.

Table 2 List of (co)annihilation and elastic DM-nucleon scattering processes included in DM@NLO, given together with the location of the corresponding source code in run_dmnlo, the references to the orignal publication and whether the Sommerfeld enhancement is included. Here, \(\phi = \{h^0,H^0,A^0,H^\pm \}\), \(V = \{Z^0,W^\pm ,\gamma \}\), \(\bar{V} = V {\setminus } \{ \gamma \}\), and \(\ell \) (\(\bar{\ell }\)) can be any (anti)lepton. The indices can take the values \(\{m,n\}=\{1,2,3,4\}\), \(\{i,j\}=\{1,2\}\)

4 Installing and running DM@NLO

4.1 Installation

The DM@NLO package is a high-energy physics program whose source code is written in Fortran 77 with a C++ interface similar to the precision code Resummino [90, 91]. It is publicly available for download at https://dmnlo.hepforge.org and is licensed under the European Union Public Licence v1.1.

The code can be compiled with the GNU compiler collection (GCC) and CMake version 3.0 or higher. As external dependencies, the libraries SLHALib-2.2 [92] and LoopTools-2.16 [93] are required for reading particle spectra following the Supersymmetry Les Houches Accord 2 (SLHA 2) convention [94, 95] and for evaluating one-loop integrals, respectively. The code ships directly with slightly modified versions of both libraries, as well as the CUBA-1.1 [96] library for performing multidimensional phase space integrals through the VEGAS Monte Carlo algorithm.

Once downloaded, the code can easily be unpacked and installed by running the following commands in a shell:

figure a

The last command is optional and places the DM@NLO binary dmnlo as well as the static library libdmnlo.a in the top-level source directory, which is the setup we assume in the following. Otherwise, the executable can be found in build/bin and the library in build/src. To install the code, e.g. system wide, the installation directory can be set with the cmake option

figure b

Compilers different from the default C, C++ and Fortran compilers identified by CMake can be set with

figure c

The path to an alternative LoopTools installation can be specified with -DLOOPTOOLS=PATH after setting -DBUILD_LOOPTOOLS (default: ON) to OFF if libraries and headers are installed in the same folder, or through LOOPTOOLS_INCLUDE_DIR and LOOPTOOLS_LIB_DIR if not.

After successful compilation, the local installation can be tested by running the commands

figure d

in a shell. The source files of the C++ interface to DM@NLO are located in src, whereas the processes themselves implemented in Fortran 77 are collected in the folder run_dmnlo. The name of each subfolder for every process supported by DM@NLO is summarised in Table 2, together with the key references documenting the corresponding calculational details. The directory external contains external dependencies like LoopTools or SLHALib. The folder input/demo provides for every process available in DM@NLO, sorted according the arXiv number of the corresponding publication, the associated example scenarios as SLHA 2 files as well as Python 3 plotting routines that partially use PySLHA [97] and allow to reproduce the most important cross section plots.

4.2 Running DM@NLO from the command line

As indicated above, DM@NLO can be executed in a shell through the command

figure e

where the mandatory argument \(<\texttt {dmnlo-input-file}>\) provides the path to a configuration file in plain text format specifying the process and corresponding input parameters. Details on all the available options in such an input configuration file are extensively documented in Appendix A. One example input file delivered with the code is input/DMNLO.in. Alternatively, the parameter values defined in the input file can also be passed through the command line interface (CLI), which then supersedes the value included in the text file. In the following, all possible command line options are described. A concise summary is also provided in Appendix B. The command line options follow the same naming convention as the variables in the configuration file, so that the transfer from the command line to the input file is straightforward. We start with the general options that are valid for both the relic density as well as the direct detection module.

The path to the SLHA file containing the numerical values of masses, mixing angles and decay widths has to be defined with --slha. The value of the renormalisation scale in GeV is fixed through the --muR option whereas the renormalisation scheme must be set to one of the three schemes defined in Sect. 3.1 with the option --renscheme. The mixed \(\smash {\overline{\textrm{DR}}}\)-OS scheme no. 1 is here the recommended option.

The --choosesol option defines the solution in the heavy quark sector, with 0 being the recommended option, where the solution is chosen such that the dependent stop mass \(m_{{\tilde{t}_2}}\) is closest to the corresponding on-shell value from the SLHA file (see discussion above). The arguments 1 and 2 then correspond to the two solutions in Eqs. (19) and (20), respectively. If DM@NLO is used from the command line and the renormalisation scheme fails, the code simply stops after issuing a warning.

Also included is a legacy option which can only be turned on through the CLI by passing the flag --legacy. This mode defines the weak mixing angle \(\theta _W\) and the W-mass as in the default MSSM model file in MicrOMEGAs 2.4.1, i.e. \(\sin \theta _W = 0.481\) and \(m_W = \cos \theta _W m_Z\) with \(m_Z\) being the on-shell Z-mass. We include this option since this definition was adopted in DM@NLO before the public release and allows to reproduce old results. Starting with v1.0.0 the electroweak mixing angle is defined through the on-shell Z- and W-mass from the SLHA 2 file

$$\begin{aligned} \sin ^2\theta _W ~=~ 1 - \frac{m^2_W}{m^2_Z} \,. \end{aligned}$$
(26)

Note that the legacy option should only be used for the reproduction of previously published results.

Lastly, the perturbative order of the calculation needs to be specified. This is only possible through the CLI via the arguments --lo for LO-accurate predictions and --nlo for NLO accuracy. For the calculation of (co)annihilation cross sections there are two more accuracy options. The flag --sommerfeld returns the Sommerfeld enhancement alone, whereas --full returns the NLO result matched to the Sommerfeld enhancement. Otherwise the highest order available is assumed. If no Sommerfeld enhancement is available, the --full option returns just the NLO cross section.

The initial and final particles of the (co)annihilation process are fixed according to the PDG numbering scheme [98]. The two options --particleA and --particleB fix the initial state, whereas the two produced SM particles must be referred to by setting --particle1 and --particle2. The collisional energy \(\sqrt{s}\) has to be defined with --pcm, which is the center-of-mass momentum \(p_{\textrm{cm}}\) of the incoming particles. The option --result controls whether the output contains the total cross section \(\sigma \) or the cross section times velocity \(\sigma v\), both in units of \({\hbox {GeV}}^{-2}\), where the relative velocity is defined as \(v = 2 \lambda ^{1/2}(s,m_a^2,m_b^2)/s\) with \(\lambda \) being the Källén function.

The direct detection module is enabled through the --DD option, which supersedes the specified (co)annihilation settings. The output contains then the SI and SD scattering cross sections of DM on protons and neutrons in \({\hbox {cm}}^{2}\), respectively. The scalar nuclear form factors from Table 1 can be found (and modified) in DD/DD_Init.F. The --formfactor option followed by an integer number (0 for DM@NLO, 1 for DarkSUSY and 2 for MicrOMEGAs) allows the user to select a set of values from Table 1.

4.3 The DM@NLO library

To facilitate the usage of DM@NLO from within other codes, the static library libdmnlo.a provides the two functions

figure f

where the former returns the total (co)annihilation cross section and the latter writes the SI and SD DM-nucleon cross sections into the array cs. The renormalisation scale is set with muR, the SLHA 2 input file with slha, the renormalisation scheme through the flag rs and the associated solution for the three soft-breaking parameters with rs. The parameter sol corresponds to the choosesol option and ff in the argument set of the direct detection function to the formfactor option.

The integer order specifies the perturbative order of the calculation. Possible vales are 0 for the LO result, 1 for the NLO result. For the computation of the (co)annihilation cross section, two additional options are available for the \(\texttt {order}\) parameter, namely 2 for the full result (including NLO calculation and Sommerfeld enhancement) and 3 for the Sommerfeld enhanced cross section alone (without including the NLO calculation).

The parameters \(\texttt {na}\) and \(\texttt {nb}\) are needed to fix the incoming particles through their respective PDG numbers, while \(\texttt {n1}\) and \(\texttt {n2}\) are meant to specify the two particles in the final state. The center-of-mass momentum is set through PcmIn. Finally, the integer array corrFlags allows to turn certain processes on and off, which may be useful if the corresponding contribution to the relic density is known to be negligible.

The static library libdmnlo.a also provides the two functions

figure g

The former allows to check whether a given process can be corrected with DM@NLO, while the latter verifies whether the particle spectrum contained in slha yields a stable renormalisation scheme.

Fig. 1
figure 1

Tree-level (black dashed line), one-loop (blue solid line), full (red solid line) if present and MicrOMEGAs (orange solid line) cross sections for the dominant (co)annihilation channels shown in Table 4 that can be corrected with DM@NLO including the corresponding uncertainties from variations of the renormalisation scale \(\mu _R\) by a factor of two around the central scale as shaded bands. The upper part of each plot shows the absolute value of \(\sigma v\) together with the thermal velocity distribution (in arbitrary units), whereas the lower part shows the corresponding relative shift (second item in the legend)

Alternative to the manual decision what annihilation channels to include, the file minimal_example.cpp located in external/micromegas_5.3.41/MSSM exemplifies the use of these functions with MicrOMEGAs in a way that only those channels contributing more than 2% to the relic density are corrected.

Before compiling the minimal example file through

figure h

the file micromegas_5.3.41/include/modelMakefile has to be replaced with the associated modified version shipped with DM@NLO. This can be achieved by running

figure i

in the external/ directory where the tar option -k (or --keep-old-files) ensures that our modified version of modelMakefile containing the paths to the required libraries according to the default installation of DM@NLO is retained. For different paths or an alternative MicrOMEGAs version, modelMakefile has to be adjusted accordingly by the user. After successful compilation, the MicrOMEGAs interface can be tested by running

figure j

in a shell from the MSSM folder. For more details on the usage of the corrFlags argument, we refer to the explanation given in minimal_example.cpp.

5 Illustrative example calculations

To illustrate the usage of DM@NLO, we present example calculations in the constrained minimal supersymmetric extension of the Standard Model (cMSSM) which contains the simplifying assumption that the soft supersymmetry-breaking parameters unify at the gauge coupling unification scale of about \(10^{16}\) GeV. This setup is entirely characterised through the universal scalar mass parameter \(m_0\), the universal gaugino mass parameter \(m_{1/2}\), the ratio of the vacuum expectation values of the neutral components of the two Higgs doublets \(\tan \beta \), the universal trilinear coupling \(A_0\), and the sign of the Higgs mixing parameter \(\mu \).

Table 3 Example scenario in the cMSSM with a positive Higgs supersymmetric mixing parameter \(\mu \) where stop (co)annihliation is the dominant dark matter mechanism. All dimensionful quantities are in GeV

In the following, we use, inspired by the recent search for non-excluded regions in the cMSSM parameter space [99], the parameter point given in Table 3, where stop (co)annihilation is the dominant dark-matter annihilation mechanismFootnote 2. The (co)annihilation channels contributing most to \(\langle \sigma _\textrm{ann}v \rangle \) are listed in Table 4 with stop-antistop annihilation into gluons having the largest relative contribution. For each channel that can be corrected with DM@NLO, we show in Fig. 1 our tree-level (black dashed line), the one-loop (blue solid line), and the full cross-section (red solid line), containing in addition to the NLO result the Sommerfeld enhancement, if available. For reference, the cross-section produced with the default MicrOMEGAs setup (orange solid line) is also shown. The grey shaded area depicts (in arbitrary units) the thermal velocity distribution, in order to demonstrate in which \(p_\textrm{cm}\) region the cross-section contributes to the total annihilation cross-section \(\langle \sigma _\textrm{ann}v \rangle \). In the lower part, the corresponding relative shifts of the different cross-section values (second item in the legend) are shown. Note that the difference between the MicrOMEGAs prediction and our tree-level result, which is particularly large for the gg (\(q\bar{q}\)), tg and tt final states, is mainly due to a different choice of the renormalisation scale. We define the renormalisation scale through the tree-level stop masses as \(\mu _R = \sqrt{m_{\tilde{t}_1} m_{\tilde{t}_2}}\), which for the particular scenario in Table 3 yields \(\mu _R = 1368.2\) GeV, whereas MicrOMEGAs 5.3.41 uses the scale \(Q = 2 m_{\tilde{\chi }^0_1}/3\) for the evaluation of the strong coupling stored in the global variable GGscale.Footnote 3 We also show the uncertainties from variations of the renormalisation scale \(\mu _R\) by a factor of two around the central scale as shaded bands.

Table 4 Dominant annihilation channels contributing to \(\langle \sigma _\textrm{ann}v \rangle \) for the cMSSM scenario in Table 3. Further contributions below 2% are omitted
Fig. 2
figure 2

Bands compatible with the Planck measurement in Eq. (1) in the \(m_{1/2}\)-\(m_0\) plane (left) and the plane spanned by the associated physical masses of the lightest neutralino and the lightest stop (right) surrounding the example scenario from Table 3 shown in form of a red star. The three bands correspond to the MicrOMEGAs calculation (orange), our tree-level (blue) and our full corrections (yellow). The black solid lines indicate the relative change \((\varOmega _\chi ^\textrm{Tree} - \varOmega _\chi ^\textrm{Full})/\varOmega _\chi ^\textrm{Tree}\) in the relic density compared to our tree-level result

Fig. 3
figure 3

Spin-independent (top) and spin-dependent (bottom) neutralino-nucleon cross sections for protons (left) and neutrons (right) in the example scenario in Table 3 for different values of the universal gaugino mass parameter as well as the corresponding neutralino relic density obtained with MicrOMEGAs (MO), our tree-level calculation (Tree) and with our full calculation (Full). The upper and lower limits imposed by Eq. (1) are indicated through the grey band

In Fig. 2 we show the impact of our corrections on the neutralino relic density \(\varOmega _\chi h^2\) by performing a scan in the \(m_{1/2}\)-\(m_0\) plane around the reference scenario of Table 3, which is indicated by a red star. The orange band (\(\varOmega ^\textrm{MO}_\chi \)) indicates the region consistent with the observed value \(\varOmega _\textrm{CDM} h^2\) from Eq. (1) purely based on MicrOMEGAs and under the assumption that the lightest neutralino solely accounts for all of the observed DM, the blue band (\(\varOmega ^\textrm{Tree}_\chi \)) corresponds to the prediction where the DM@NLO tree-level cross sections replace the CalcHEP result, and the yellow band (\(\varOmega ^\textrm{Full}_\chi \)) is based on our full calculation.

The width of the three bands reflects the experimental \(2\sigma \) uncertainty shown in Eq. (1). One can observe a clear separation between all three bands everywhere across the shown \(m_{1/2}\)-\(m_0\) plane. The black contour lines quantify the relative difference between our tree-level and our full calculation of the neutralino relic density. The increase amounts to roughly 16 to 18% in the regions consistent with the observed relic density \(\varOmega _\textrm{CDM}\). Let us mention that DM@NLO allows to correct a large portion of the different contributions to the relic density which is between 85 and 90% in the relevant regions.

Finally, we illustrate the application of DM@NLO to direct detection, i.e. we discuss the neutralino-nucleon cross-sections for different values of \(m_{1/2}\) around the example scenario. In the upper panels of Fig. 3, the SI proton (left) and neutron (right) cross sections are shown, whereas the corresponding SD quantities are presented in the two lower panels. All quantities have been calculated with our DM@NLO code at tree level (black solid line), including the full \(\mathcal {O}({\alpha _s})\) corrections to the dominant effective operators (blue solid line), MicrOMEGAs (orange solid line) and the corresponding analytic tree-level calculation.Footnote 4

We also show all three values of the resulting relic density (\(\varOmega ^\textrm{MO}_\chi \), \(\varOmega ^\textrm{Tree}_\chi \), \(\varOmega ^\textrm{Full}_\chi \)) with the same colour coding as in Fig. 2, as well as the Planck compatible value through a grey band. Note that the three curves increase as expected with the neutralino mass.

6 Summary

In this paper, we have presented the DM@NLO package, dedicated to precision calculation of dark matter (co)annihilation processes and direct detection in the MSSM. The program allows to compute total cross-sections at leading order and next-to-leading order in perturbative SUSY-QCD including the Sommerfeld enhancement effect.

To illustrate the usage of the code and the impact of the higher-order corrections, various computations in a typical supersymmetric dark matter scenario were performed using DM@NLO. Apart from the benefit of having more precise predictions, we emphasise the possibility of estimating theory errors as a major advantage of using NLO cross sections and beyond. In addition, the general structure of the code is well-suited for the extension to non-supersymmetric models.