Model definitions in Matchete
Defining a model is the starting point of any Matchete workflow. A model specifies the gauge symmetry structure, all fields (together with their representations and mass assignments), all coupling constants, and the interaction Lagrangian.
Gauge groups
Gauge groups are defined with DefineGaugeGroup. Both Abelian $U(1)$ and non-Abelian groups are supported. For example, the Standard Model gauge group $SU(3)_c \times SU(2)_L \times U(1)_Y$ is defined as:
DefineGaugeGroup[SU3c, SU3, gs, G, Abelian -> False];
DefineGaugeGroup[SU2L, SU2, gw, W, Abelian -> False];
DefineGaugeGroup[U1Y, U1, g1, B, Abelian -> True ];For most applications the SM gauge group is already available through predefined modelfiles that cna be loaded using LoadModel (see below).
Fields
Fields are introduced with DefineField. Each field requires a spin specification (Scalar, Fermion, or Vector), and may carry gauge or flavor indices. The Mass option distinguishes heavy fields (to be integrated out) from light ones:
(* A heavy real scalar singlet *)
DefineField[S, Scalar, SelfConjugate -> True, Mass -> {Heavy, M}];
(* A heavy Dirac fermion in the fundamental of SU(3)c *)
DefineField[Psi, Fermion, SelfConjugate -> False,
Mass -> {Heavy, MPsi},
Indices -> {SU3c[fund]}
];Fields charged under multiple gauge groups or carrying flavor indices can be defined by supplying a list to the Indices option.
Couplings
All free parameters beyond the masses set in DefineField are introduced with DefineCoupling:
DefineCoupling[lam, SelfConjugate -> True]; (* real *)
DefineCoupling[yuk, SelfConjugate -> False]; (* complex *)Writing the Lagrangian
Once all building blocks are in place, the Lagrangian can be written in a notation close to the pen-and-paper form. The kinetic and mass terms are generated automatically by FreeLag:
Lkin = FreeLag[S] + FreeLag[Psi];
Lint = -lam[]/2 (Bar@H[i] H[i]) S[]^2;
L = Lkin + Lint //RelabelIndices;RelabelIndices assigns canonical dummy indices and should be applied after assembling the Lagrangian. Bar denotes Hermitian conjugation for complex scalars and the Dirac bar for fermions.
Loading a predefined model
For common theories, Matchete ships a library of model files that can be loaded directly with LoadModel:
LSM = LoadModel["SM"];A catalogue of available models is maintained in the model database. For a full worked example of a model definition see the Quickstart.