RGEs
Calculating the RGEs with SARAH
SARAH calculates the renormalization group equations (RGEs) for the parameters of the (super)potential, the softbreaking terms and the gauge couplings at one and two loop level. This is done by using the generic formulas of supersymmetry or a general quantum field theory . These expressions were extended by the results for several Abelian gauge groups and Dirac mass terms for gauginos . In addition, the gauge dependence in the running of the VEVs is included . Read also see the detials about the calculation.
SARAH writes the analytical expressions for all RGEs in separated files, and provides in addition a file to run the RGEs numerical with Mathematica, see RGE Running with Mathematica.
The calculation is started via
CalcRGEs[Options]
Options
The different options are

TwoLoop
, Value:True
orFalse
, Default:True
If also the two loop RGEs should be calculated. 
ReadLists
, Value:True
orFalse
, Default:False
If the RGEs have already be calculated, the results are saved in the output directory. The RGEs can be read from these files instead of doing the complete calculation again. 
VariableGenerations
, Value: List of particles, Default:{}
Some theories contain heavy superfields which should be integrated out above the SUSY scale. Therefore, it is possible to calculate the RGEs assuming the number of generations of specific superfields as free variable to make the dependence on these fields obvious. The new variable is namedNumberGenertions[X]
, whereX
is the name of the superfield. 
NoMatrixMultiplication
, Values:True
orFalse
, Default:False
Normally, the βfunctions are simplified by writing the sums over generation indices as matrix multiplication. This can be switched off using this option. 
IgnoreAt2Loop
, Values: a list of parameters, Default:{}
The calculation of 2loop RGEs for models with many new interactions can be very timeconsuming. However, often one is only interested in the dominant effects of the new contributions at the 1loop level. Therefore, IgnoreAt2Loop > $LIST can be used to neglect parameters at the twoloop level The entries of $LIST can be superpotential or soft SUSYbreaking parameters as well as gauge couplings. 
WriteFunctionsToRun
,True
orFalse
, Default:True
Defines, if a file should be written to evaluate the RGEs numerically in Mathematica
Furthermore, the function PrepareRGEs
is used to prepare the RGEs for the RGE Running with Mathematica. To read or change its options run e.g. Options[PrepareRGEs]
or SetOptions[PrepareRGEs,OnlyDiagonal>False]
.
Output arrays
The βfunctions for SUSY will be stored in the following arrays:

Gij
: Anomalous dimensions of all chiral superfields 
BetaWijkl
: Quartic superpotential parameters 
BetaYijk
: Trilinear superpotential parameters 
BetaMuij
: Bilinear superpotential parameters 
BetaLi
: Linear superpotential parameters 
BetaQijkl
: Quartic softbreaking parameters 
BetaTijk
: Trilinear softbreaking parameters 
BetaBij
: Bilinear softbreaking parameters 
BetaSLi
: Linear softbreaking parameters 
Betam2ij
: Scalar squared masses 
BetaMi
: Majorana Gaugino masses 
BetaGauge
: Gauge couplings 
BetaVEVs
: VEVs 
BetaDGi
: Dirac gaugino mass terms
and for nonSUSY models in

Gammaij
orGijS
: Anomalous dimensions of scalars 
GijF
: Anomalous dimensions of fermions 
GammaijHat
: gauge dependent part of running VEVs 
BetaGauge
: Gauge couplings 
BetaLijkl
: Quartic scalar couplings 
BetaYijk
: Interactions between two fermions and one scalar 
BetaTijk
: Cubic scalar interactions 
BetaMuij
: Bilinear fermion term 
BetaBij
: Bilinear scalar term 
BetaVEVs
: Vacuum expectation values
These arrays are also saved in the directory
../\SARAH/Output/"ModelName"/RGE
Conventions for the output
All RGEs are saved in threedimension arrays with the following conventions:
{Parameter,1Loop,2Loop}
 The first entry contains the name of the parameter
 The second entry contains the oneloop βfunction up to a factor 1/(16π^{2})
 The third entry contains the two loop βfunction up to a factor (1/(16π^{2}))^{2}
For anomalous dimension the first entry is a bit different and the output reads
{{Field1,Field2},1Loop,2Loop}
Thus, the names of the two external fields are given which must not be identical in the presence of offdiagonal, anomalous dimensions.
Remarks
GUT normalization
The gauge couplings of U(1) gauge groups are often normalized at the GUT scale with respect to a specific GUT group. Therefore, it is possible to define for each gauge coupling the GUTnormalization by the corresponding entry in the parameters file. See parameters.m for more information.
Index contraction
Generally, the results contain sums over the generation indices of the particles in the loop. SARAH always tries to write them as matrix multiplications, in order to shorten the expressions. Therefore, new symbols are introduced:

MatMul[A,B,C,...][i,j]
: (ABC…)_{i, j}. Matrix multiplication, also used for vectormatrix and vectorvector multiplication. 
trace[A,B,C,...]
: Tr(ABC…). Trace of a matrix or of a product of matrices. 
Adj[M]
: M^{†}. Adjoint of a matrix 
Tp[M]
: M^{T}. Transposed of a matrix
Some remarks about the output:
 To differ between generation and other indices during the calculation,
Kronecker[i,j]
is used for generation indices instead ofDelta[i,j]
.  The results for the scalar masses are simplified by using abbreviations for often appearing traces, see also Ref. . The definition of the traces are saved in the array
TraceAbbr
.  If the model contains parameters with three indices, matrix multiplication is automatically switched off and the results are given as sum over the involved indices. In addition, these expressions are simplified by replacing a parameter with three indices by a sum of parameters with two indices. The β function in this form a saved in NAME <> 3I with NAME stands for the standard array containing the RGEs.
Examples

βfunction of Yukawa coupling The Yukawa couplings of the MSSM are saved in
BetaYijk
. The first entry consists of BetaYijk[ [1,1]]: Ye[i1,i2] ,i.e. this entry contains the βfunctions for the electron Yukawa coupling. The corresponding oneloop βfunction is
BetaYijk[ [1,2]]: (9*g1^2*Ye[i1,i2])/53*g2^2*Ye[i1,i2]+3*trace[Yd,Adj[Yd]]*Ye[i1,i2]+ trace[Ye,Adj[Ye]]*Ye[i1, i2]+3*MatMul[Ye,Adj[Ye],Ye][i1, i2]
The twoloop βfunction is saved in
BetaYijk[ [1,3]]
but we skip it here because of its length. 
Anomalous dimensions:

the anomalous dimensions for leptons in the SM is saved in
GijF
read {{e[{i1}], e[{i2}]}, (3g1^2XiKronecker[i1, i2])/5 + MatMul[Ye, Adj[Ye]][i1, i2], (846g1^4Kronecker[i1, i2]  5(3*(11g1^2  85g2^2 + 60trace[Yd, Adj[Yd]] + 20trace[Ye, Adj[Ye]])* MatMul[Ye, Adj[Ye]][i1, i2] + 10*MatMul[Ye, Adj[Ye], Ye, Adj[Ye]][i1, i2]))/200} 
In models with Vectorlike states usually anomalous dimensions show up which mix fields. For instance {{SuR[{gen1, col1}], St1[{col2}]}, 2MatMul[conj[Yu], Yt][i1], ((2g1^2)/5 + 6g2^2  8ScalarProd[Yt, conj[Yt]]  6trace[Yu, Adj[Yu]]) MatMul[conj[Yu], Yt][i1]  2*(MatMul[conj[Yu], Tp[Yd], conj[Yd], Yt][i1] + MatMul[conj[Yu], Tp[Yu], conj[Yu], Yt][i1])}
Here,
SuR
are the upsquarks from the MSSM andSt1
are new superfields. Note, even if the names for scalars are shown by conventions, the anomalous dimension apply for the superfields!


βfunction of softbreaking masses and abbreviations for traces The softbreaking mass of the selectron is the first entry of
Betam2ij
Betam2ij[ [1,1]]: me2[i1,i2]and the oneloop βfunction is saved in
Betam2ij[ [1,2]]
:(24*g1^2*MassB*conj[MassB]+10*g1^2*Tr1[1])*Kronecker[i1,i2]/5 + 4*mHd2*MatMul[Ye,Adj[Ye]][i1,i2]+4*MatMul[T[Ye],Adj[T[Ye]]][i1,i2] + 2*MatMul[me2,Ye,Adj[Ye]][i1,i2]+4*MatMul[Ye, ml2, Adj[Ye]][i1,i2] + 2*MatMul[Ye,Adj[Ye],me2][i1,i2]
The definition of the element
Tr1[1]
is saved inTraceAbbr[ [1,1]]
:{Tr1[1], mHd2 + mHu2 + trace[md2] + trace[me2]  trace[ml2] + trace[mq2]  2*trace[mu2]}

Number of generations as variable: With CalcRGEs[VariableGenerations > {q}]
the number of generations of the leftquark superfield is handled as variable. Therefore, the oneloop βfunction of the hypercharge couplings reads
(63*g1^3)/10 + (g1^3*NumberGenerations[q])/10

No matrix multiplication Using matrix multiplication can be switched off by CalcRGEs[NoMatrixMultiplication > True]
The oneloop βfunction for the electron Yukawa coupling is now written as
sum[j2,1,3,sum[j1,1,3,conj[Yd[j2,j1]]*Yu[i1,j1]]*Yd[j2,i2]] + 2*sum[j2,1,3,sum[j1,1,3,conj[Yu[j1,j2]]*Yu[j1,i2]]*Yu[i1,j2]] + sum[j2,1,3,sum[j1,1,3,conj[Yu[j2,j1]]*Yu[i1,j1]]*Yu[j2,i2]] + (3*sum[j2,1,3,sum[j1,1,3,conj[Yu[j1,j2]]*Yu[j1,j2]]]*Yu[i1,i2])/2 + (3*sum[j2,1,3,sum[j1,1,3,conj[Yu[j2,j1]]*Yu[j2,j1]]]*Yu[i1,i2])/2  (13*g1^2*Yu[i1,i2])/153*g2^2*Yu[i1,i2](16*g3^2*Yu[i1,i2])/3

Ignoring parameters at twoloop Using CalcRGEs[IgnoreAt2Loop > {T[L1],T[L2],L1,L2}]
in the MSSM with trilinear RpV would ignore the λ and λ′ coupling as well as their softbreaking equivalents in the calculation of the 2loop RGEs.
Output
The RGEs calculated by SARAH are outputted in different formats:
 they are written in the internal SARAH format in the output directory
 they are included in the LaTeX output in a much more readable format
 they are exported into ,a format which can be used together with
NDSolve
of Mathematica to solve the RGEs numerically within Mathematica  they are exported into
Fortran
code which is used by SPheno