OneLoop Threshold Corrections in Scalar Sectors
As of version 4.14.0 SARAH is able to compute threshold corrections to scalar and yukawa couplings in effective theories by integrating out all heavy degrees of freedom from a full theory, see the related SARAH paper. There is also a file Example_Matching.nb
, located in SARAH's root directory, which contains a comprehensive example of the MSSM>SM as well as MSSM>THDM matching.
The matching of effective couplings consists of the following ingedients:
 diagonalisation of mass matrices at the matching scale
Q_{\rm match} \gg v_{\rm SM}
 diagrammatic calculation of effective couplings
 assume vanishing external momenta p^{2} → 0
Thus, effective lowenergy couplings can be expressed in terms of highscale parameters.
SARAH provides two different possibilities to perform the matching between two arbitrary scalar sectors:
 An analytical calculations within Mathematica
 A fully numerical calculation using only the SPheno interface
The numerical approach clearly has the advantage to be able to diagonalise the mass spectrum in more complicated situations while the fully analytical approach always needs to neglect all dimensionful parameters that are below the TeV scale, e.g. v_{\rm SM}\to 0
, which effectively neglects contributions of higher dimensional operators important near the TeV scale. Thus, the numerical approach should be prefered if BSM scales near or even below \mathcal{O}({\rm 1 TeV})
are considered. Also falvour violating effects are better studied with the numerical approach. However, the analytical approach is well suited to study the influence of certain fields, diagram topologies and couplings on the analytical level.
Feature  Numerical  Analytical approach 

Sophisticated selection of specific contributions  no  yes 
(Off)diagonal WFR contributions  yes  yes 
Effective scalar operators  yes  yes 
Effective yukawa operators above and below the matching scale  yes  no 
Mass matrix diagonalisation  numerical  analytical 
Matching of EFT towers  yes  no 
Export analytical result of threshold corrections  no  yes 
Fully Analytical Approach
Thus, the computed matching conditions can be used to generate SPheno output which calculates e.g. Higgs boson masses in a very precise way (right firgure).
While the #Interactive Mode allows only for the computation of dedicatet effective couplings, the #Batch Mode provides a fully automatized creation of such a SPheno version based on one single steering file.
Initialization
For the actual computation, the model of the full theory (containing the heavy degrees of freedom e.g. the MSSM), has to be loaded
<<SARAH`
Start["MSSM"]
Then, certain simplifications have to be provided in order to allow for an analytical diagonalization of all mass matrices. VEVs in that are of the order of the electroweak scale have to be neglected, i.e. all fields in the lowenergy EFT are assumed to be massless. To do so, put the simplification VEV>epsUV
into the parametrisation list described below. epsUV
marks dimensionful parameters that are to be neglected during the matching. Do not simply set the VEVs to zero as this causes problems in e.g. the calculation of tadpole equations (division by zero).
To get informations about how to initialise the matching routines type ?InitMatching
:
InitMatching[options] initializes the matching routines used for the calculation of effective scalar couplings.
The function can be used in two modi controlled by the option InputFile> False/filename.m
where filename.m is an input file located in the directory of the currently loaded model.
If an input file is given the matching is performed as described in the file.
If InputFile>False, the following options can be used:
 Simplifications > {vu>Sin[\[Beta]] epsUV, ...} : list of simplifications used for the analytic diagonalization of mass matrices as well as all other calculations.
 Approximations > {\[Beta]>0,\[Beta]<Pi/2} : assumptions used to simplify expressions
 SolveTadpoles > {mHu2,mHd2} : parameters to solve tadpoles for
After the initialization (no input file given) use the functions ?EFTcoupNLO and ?EFTcoupLO to calculate effective couplings.
See also Options[InitMatching].
Interactive Mode
This section assumes that InitMatching
was invoked without the InputFile
option but with sufficient Simplifications
and Approximations
such that the analytical diagonalisation was successfull. To check this one can have a look at ?M
where the result of the diagonal mass matrices is stored.
As stated above, the interactive mode is not able to generate fully automatized SPheno code. However, certain features are dedicated to this mode to simplify the study of the analytical structer of the different contributions:
 restrict the computation on certail diagram topologies (boxes, triangles, etc.)
 explicitly exclude diagrams containing certain internal fields (e.g. exclude internal
hh
fields)  restrict the computation on diagrams with certain internal field types ( e.g. only diagrams with four internal scalars etc.)
 control the computation of
 MSDR conversion factors
 gauge coupling thresholds
 (off)diagonal WFR contributions
 turn on debugging to see which fields contribute through which diagrams in some way
this makes it easy to get an impression on how e.g. certain fields contribute and motivates choices for numerical studies including all contributions.
OneLoop Matching
Use ?EFTcoupNLO
EFTcoupNLO[{field1[index1],field2[index2]},...,options] calculates the effective coupling between field1, field2, ... with the generation indices index1, index2, ... at the oneloop order in the limit of vanishing external momenta.
The most important options and there default values are:
 ExcludeFields > {} : fields contained in this list do not enter the calculation of the effective coupling i.e. diagrams with internal propagators of these fields are excluded. Example: {Chi, Cha}.
 InternalPatterns > {} : compute only diagrams with certain internal fieldtype patterns e.g. two internal scalars/fermions {SS,FF} etc. For an empty list all patterns are computed. Example: {S,SS,SSS,SSSS} computes corrections from heavy scalars only.
 Topologies > {} : restrict the calculation to a subset of topologies. For an empty list, all topologies are considered. Example: Topologies > {D} computes box diagrams only. Also a group of topologies e.g. {B} can be given which includes all topologies that contain a twopoint function.
 ExcludeTopologies > {OffdiagonalWFRs} : excludes topologies from the calculation. The filtering of ExcludeTopologies is also applied on the topology groups given in the Topology list.
 Debug > False : If set to True, all amplitudes are multiplied with a term debug[<topology>][<fieldinsertions>] that identifies the topology and the internal fields.
 ShiftMSDR > Automatic : includes the MDDR conversion in the calculation. If set to 1, the conversion is computed even in a nonSUSY model, if set to 1, the conversion is computed exclusively.
 GaugeThresholds > True : wheter to include the computation of gauge coupling thresholds which may enter the treelevel effective coupling.
See also Options[EFTcoupNLO].
Example: EFTcoupNLO[{hh[1],hh[1],hh[1],hh[1]}, Topologies>{C}] computes all triangle diagrams.
Al list of all options is:

Topologies > $LIST
 Default:
{}
 Description: list of topologies to include into the calculation. If empty, all topologies are used. Topologies are denoted as in Appendix A of ARXIVLINK.
 Example:
{B[4][1],B[4][2][1], B[4][2][2]}
or equivalently{B[4]}
.
 Default:

ExcludeTopologies > $LIST
 Default:
{OffdiagonalWFRs}
 Description: list of topologies to be excluded from the calculation. The filtering of ExcludeTopologies is also applied on the topology groups given in the Topologies option, e.g. if
{B[4]}
is given in the topologies list butB[4][2][2]
in the ExcludeTopologies list, then onlyB[4][1]
andB[4][2][1]
are computed.  Example:
{OffdiagonalWFRs, DiagonalWFRS}
to exclude all contributions on external legs.
 Default:

ExcludeFields > $LIST
 Default:
{}
 Description: list of fields to be excluded when appearing as internal fields.
 Example:
{Cha,Chi}
e.g. to exclude electroweakinos within a split SUSY scenario.
 Default:

InternalPatterns > $LIST
 Default:
{}
 Description: Description: compute only diagrams with certain internal fieldtype patterns. For an empty list all patterns are computed.
 Example:
{S,SS,SSS,SSSS}
computes corrections from heavy scalars only whileFF
computes diagrams that contain exactly two internal fermions.
 Default:

GaugeThresholds>$BOOL
 Default:
True
 Description: whether to include the contributions from gauge coupling thresholds to the amplitude.
 Default:

ShiftMSDR> 0/1/2/Automatic
 Default:
Automatic
 Description: whether to include the MS − DR conversion factors.
0
: no,1
: inclusive,2
: exclusive,Automatic
: decide between1
and0
depending on the type of considered model (SUSY or nonSUSY).
 Default:

Debug > $BOOL
 Default:
False
 Description: multiplies each amplitude with a debug variable marking its topology and field insertions
 Example:
debug[C[4][1]][hh[2], hh[2],hh[2]]
may be multiplied with the expression of the triangle diagram with three heavy internal Higgs bosons.
 Default:

SimplifyResults > $BOOL
 Default:
True
 Description: whether to simplify the results using the given assumptions
 Default:

LoopReplace > $FUNCTION
 Default:
AnalyticLoopFunctions
 Description: the amplitudes contain loop functions in the FormCalc notation (e.g. a B_{0}(0, m_{1}^{2}, m_{2}^{2}) function is denoted by
B0i[bb0,0,m1^2,m2^2]
). The functionAnalyticLoopFunctions
replaces them with the IRsave loop functions defined in Appendix B of ARXIVLINK. However, for a better readability one may set this to theIdentity
function.  Example:
Identity
 Default:
TreeLevel Matching
Use EFTcoupLO
. Note that only the options ExcludeFields
, Debug
and SimplifyResults
are available.
Topologies
The topologies are described in appendix A in LINK TO PAPER. To get a list of all available topologies and groups of topologies see the list TopoNotation
.
Fortran Output
If a standard RGE running, matching and mass calculation using SPheno is demanded, the Batch mode described in the next section should be used. However, for the usage of pieces of the calculations obtained in the interactive mode in other programs or custom SPheno versions one can either export the Mathematica expressions or use the function GenerateSelfDefinedFuntion[
“MyRoutineName
”,
]
to generate a Fortran routine. By default, all symbols are assumed to be complex. Ensure to set conj[parameter]=parameter
for all real parameters as well as to replace Mathematica symbols (e.g. greek letters, mathematical typesetting etc.) with undefined ones that are compatible with yout Fortran code.
Batch Mode
For a fully functional highscale SPheno version the Batch mode is recommended as it can create
 a highscale SPheno version which uses the precomputed matching conditions as boundary condition at the high scale and
 LaTeX output for the evaluation of the matching conditions, mass matrices, ... in a human readable way.
To start the batch mode run InitMatching[InputFile> “File name located in the directory of the loaded model.”]
where the .m
file may contain the following information
(*  *)
(* Informations about the Matching *)
(*  *)
$NameUV="HighScaleMSSMlowMA"; (* Name of the output directory and the SPheno binary *)
$ParametrisationUV = { (* similar to the Parametrisationoption of InitMatching *)
vd > epsUV,
vu > epsUV,
Yu[a_,b_] :> Delta[3,b] Delta[a,3] Yu[a,b],
Yd[a_,b_] :> Delta[3,b] Delta[a,3] Yd[a,b],
Ye[a_,b_] :> Delta[3,b] Delta[a,3] Ye[a,b],
T[Yu][a__] :> Delta[a] Azero Yu[a],
T[Yd][a__] :> Delta[a] Azero Yd[a],
T[Ye][a__] :> Delta[a] Azero Ye[a],
mq2[a__] :> Delta[a] m0^2,
mu2[a__] :> Delta[a] m0^2,
md2[a__] :> Delta[a] m0^2,
me2[a__] :> Delta[a] m0^2,
ml2[a__] :> Delta[a] m0^2,
MassB>m12,
MassWB>m12,
MassG>m12,
B[\[Mu]] > epsUV^2,
\[Mu]>MuSUSY,
conj[x_] > x
};
$AssumptionsMatching={ (* similar to the Assumptionsoption of InitMatching *)
TanBeta>0,
m0>0,
m12>0,
MuSUSY>0
}
$ExcludeFieldsMatching={}; (* similar to the ExcludeFieldsoption of EFTcoupNLO *)
$SolveTadpolesUV = {mHd2,mHu2}; (* similar to the SolveTadpolesoption of InitMatching *)
$MatchingConditions = { (* conditions to be applied at the matching scale *)
Lambda1 > 1/6 hh[1].hh[1].hh[1].hh[1],
Lambda2 > 1/6 hh[2].hh[2].hh[2].hh[2],
Lambda3 > hh[1].hh[1].Hpm[2].conj[Hpm[2]],
Lambda4 > hh[1].hh[2].Hpm[2].conj[Hpm[1]] + I*hh[1].Ah[2].Hpm[1].conj[Hpm[2]],
Lambda5 > hh[1].hh[2].Hpm[2].conj[Hpm[1]]  I*hh[1].Ah[2].Hpm[1].conj[Hpm[2]],
Lambda6 > hh[1].hh[2].Hpm[1].conj[Hpm[1]],
Lambda7 > hh[1].hh[2].Hpm[2].conj[Hpm[2]]
};
(*  *)
(* LaTeX Output *)
(*  *)
$EFTcouplingsToTeX=True;
$AdditionalTeXsymbols={
{Lambda1, "\\lambda_1"},
{Lambda2, "\\lambda_2"},
{Lambda3, "\\lambda_3"},
{Lambda4, "\\lambda_4"},
{Lambda5, "\\lambda_5"},
{TanBeta, "t_{\\beta}"},
{m0, "m_0"},
{m12, "M_{1/2}"},
{MA, "M_A"},
{MuSUSY, "\\mu"},
{Azero, "A_0"}
};
(*  *)
(* SPheno Output *)
(*  *)
$ExportToSPheno=True;
$SPhenoEFTmodel="THDMIInoZ2";
$SPhenoMINPAR={
{1, m0},
{2, mGauginos},
{3, TanBeta},
{4, MuSUSY},
{5, Azero},
{6, MA}};
$SPhenoBoundaryHighScale={};
$SPhenoBoundaryRenScale={
{M12, MA^2 TanBeta/(1+TanBeta^2)}
};
$SPhenoTadpoles={M112,M222};
$SPhenoMatchingScale=m0;
$SPhenoRenScale=MA^2;
$SPhenoMatchingEWSB=Default[THDMII];
The option concerning the matching which is new compared to the interactive mode is $MatchingConditions
. It defines the matching condition which is applied at the matching scale $SPhenoMatchingScale
. The first entry of the replacement list is a coupling in the lowenergy theory (in this case of the THDM) while the second one is the corresponding amplitude in the UVmodel. The prefactors are due to different normalizations of the fields in the two SARAH models.
The LaTeX options should be selfexplanatory. The list AdditionalTeXsymbols
should contain all additional symbols which are not defined in the UVmodel or haven't got a LaTeX definition yet.
The generated Fortran and LaTeX routines are saved into the output directory of the UV model: $SARAH_Directory/Output/Modelname/EWSB/Matching/$NameUV
. While the TeX files can be compiled with any standard LaTex compiler, the Fortran routines contain only the effective couplings but are included during the SPheno generation.
The variables prepended with $SPheno
will be used to generate a new SPheno.m and correspond to the usual variables used there. The new SPheno.m will then include the Fortran routines in the $MatchingConditions
applied at the scale $SPhenoMatchingScale
. The location of the SPheno.m is the directory of the model $SPhenoEFTmodel
. It can be used in a seperate Mathematica kernel to make SPheno as usual.
Numerical Approach
The key difference to the analytical approach is the ability to also compute threshold corrections to Yukawa couplings, necessary for the running above the matching scale.
Example
(**)
(* information for matching to MSSM *)
(**)
MatchingToModel= {"MSSM"};
MatchingScale = {m0};
IncludeParticlesInThresholds={
{hh,Ah,Hpm,Su,Sd,Se,Sv,Chi,Cha}
};
AssumptionsMatchingScale={
{
{vd,epsUV*Cos[ArcTan[TanBeta]]},
{vu,epsUV*Sin[ArcTan[TanBeta]]}
}
};
BoundaryMatchingScaleUp={
{
{Yu, Sqrt[1+TanBeta^2]/TanBeta*Yu},
{Yd, Sqrt[1+TanBeta^2]*Yd},
{Ye, Sqrt[1+TanBeta^2]*Ye}
}
};
BoundaryMatchingScaleDown={
{
{\[Lambda], 1/3 EFTcoupNLO[hh[1].hh[1].hh[1].hh[1]]}
}
};
ParametersToSolveTadpoleMatchingScale={
{mHd2,mHu2}
};
Implemented Models and Hierarchies
Model Name  EFT  UV model(s)  hierarchy 

HighScaleSUSY/MSSM  SM  MSSM  (a) 
HighScaleSUSY/NMSSM  SM  NMSSM  (a) 
HighScaleSUSY/MSSMlowMA  THDM  MSSM  (b) 
SplitSUSY/MSSM  SM+EWkinos  MSSM  (c) 
SplitSUSY/NMSSM  SM+singlet+EWkinos  SMSSM  ∼(c) 
SplitSUSY/MSSMlowMA  THDM+EWkinos  MSSM  (d) 
SplitSUSY/MSSM_2scale  SM  MSSM > SM+EWkinos  (e) 
SplitSUSY/MSSM_3scale  SM  MSSM > THDM+EWkinos > THDM  (f) 
File Name  EFT  UV mode  hierarchy 

MSSM/Matching_HighScaleSUSY.m  SM  MSSM  (a) 
NMSSM/Matching_HighScaleSUSY.m  SM  NMSSM  (a) 
MSSM/Matching_SplitSUSY.m  SM+EWkinos  NMSSM  ∼(c) 
MSSM/Matching_THDM.m  THDM  MSSM  (b) 
SMSSM/Matching_SplitSUSY.m  SM+singlet+EWkinos  SMSSM  (c) 