It is usually not necessary to define any index structure for terms appearing in the (Super)potential. This task is automatically performed by SARAH: it adds generation indices if necessary to all fields and parameters and contracts all charges using
the Kronecker delta (Delta)
the antisymmetric tensor (epsTensor)
Clebsch-Gordan Coefficients (CGC).
The rules to contract indices corresponding to the fundamental (upper) and anti-fundamental (lower) representation of a gauge group are:
an upper and a lower index is contracted via a Kronecker Delta
N upper or lower indices of a SU(N) are contracted with the epsilon Tensor
Verifying Index Contractions
If one is unsure about how indices are contracted you can check the output of the function MakeIndexStructure which is internally used. Example after loading the THDM-II model:
The CGCs which are used for interactions involving higher dimensional irreps are parametrized as follows:
First, the gauge group is given, afterwards the Dynkin labels of all involved irreps are stated and finally the indices are listed. For instance, the interaction between a scalar color sextet (Oc) and two fermionic triplets which appear in several generations (t) is defined in the input by the user just as
The numerical values for all CGCs are calculated by Susyno.
Contractions for Lagrangian
In principle, it is also possible that the user can define a contraction of indices which is not the standard one. In particular for the S**U(2) it might be necessary to adjust the index contraction: there is some ambiguity because of the relation among the fundamental and anti-fundamental representation in this group. One can see that SARAH used contractions via
ShowSuperpotentialContractions for SUSY models
SA`LagrangianContractions for non-SUSY models
2 \times 3 \times 2 of SU(2): depending of the definition of the triplet t the demanded contraction might be
Note, the indices for the fields are shown only for clarity here. When writing the contractions in the SARAH model file, it is not necessary to write the indices of the fields. These are generated automatically by SARAH. Thus, the correct syntax which shall be used in the model file is as follows
epsTensor[lef1,lef2] epsTensor[lef2b,lef3] l.t.l
|H_u^\dagger \sigma_a H_u + H_d^\dagger \sigma_a H_d|^2 can be written by using the completeness relation of the Pauli matrices as
SARAH calculates the RGEs for the unbroken gauge groups. Therefore, it assumes that non-fundamental irreps not written as tensor product as this is the case for broken groups, but of vectors of appropriate length. Because of that, it has to re-calculate the contractions internally, and makes use of routines of Susyno of that. However, Susyno returns the contractions with an arbitrary phase which can even change from Mathematica version to Mathematica version, i.e. this can sometimes by rather randomly. If you encounter such a problem, it's best to make use of the option to fix the contractions in the model. That's done via
where COUPLING is the name of the coupling for which you want to 'hard-code' the contraction and CONTRACTION is the given contraction.
Four triplet interaction: for
1/2 LT trip.trip.trip.trip