StandardModel: SM.fr

File SM.fr, 24.8 KB (added by degrande, 5 years ago)
Line 
1(***************************************************************************************************************)
2(******                       This is the FeynRules mod-file for the Standard model                       ******)
3(******                                                                                                   ******)
4(******     Authors: N. Christensen, C. Duhr, B. Fuks                                                     ******)
5(******                                                                                                   ******)
6(****** Choose whether Feynman gauge is desired.                                                          ******)
7(****** If set to False, unitary gauge is assumed.                                                          ****)
8(****** Feynman gauge is especially useful for CalcHEP/CompHEP where the calculation is 10-100 times faster. ***)
9(****** Feynman gauge is not supported in MadGraph and Sherpa.                                              ****)
10(***************************************************************************************************************)
11
12(* ************************** *)
13(* *****  Information   ***** *)
14(* ************************** *)
15M$ModelName = "Standard Model";
16
17M$Information = {
18  Authors      -> {"N. Christensen", "C. Duhr", "B. Fuks"},
19  Version      -> "1.4.6",
20  Date         -> "15. 04. 2014",
21  Institutions -> {"Michigan State University", "Universite catholique de Louvain (CP3)", "IPHC Strasbourg / University of Strasbourg"},
22  Emails       -> {"neil@pa.msu.edu", "claude.duhr@uclouvain.be", "benjamin.fuks@cnrs.in2p3.fr"},
23  URLs         -> "http://feynrules.phys.ucl.ac.be/view/Main/StandardModel"
24};
25
26FeynmanGauge = True;
27
28(* ************************** *)
29(* ***** NLO Variables ****** *)
30(******************************)
31
32FR$LoopSwitches = {{Gf, MW}};
33FR$RmDblExt = { ymb -> MB, ymc -> MC, ymdo -> MD, yme -> Me,
34   ymm -> MMU, yms -> MS, ymt -> MT, ymtau -> MTA, ymup -> MU};
35
36(* ************************** *)
37(* *****  Change  log   ***** *)
38(* ************************** *)
39
40(* v1.4.6: NLO variable added.                                               *)
41(* v1.4.5: Added widths for ghosts.                                          *)
42(* v1.4.4: Changed widths of goldstone bosons to be the same as for the W and Z bosons *)
43(* v1.4.3: Updated conventions for the symmetric structure constants of SU3. *)
44(* v1.4.2: Set FeynmanGauge=True as default again.                           *)
45(* v1.4: Added SU(2) representation.                                         *)
46(*       -> Modification in the field declarations (doublets are added)      *)
47(*       -> Modification in the Lagrangian (much simpler).                   *)
48(* v1.3: Added yukawa couplings for all fermions for gauge invariance.       *)
49(*       Added yukawa couplings for 1st generation fermions to Massless.rst. *)
50(*       Updated parameters to PDG 2010.                                     *)
51(* v1.2: Set FeynmanGauge=True as default.                                   *)
52(*       Set Gluonic ghosts to be included in both gauges.                   *)
53(* v1.1: Fixed yukawa couplings in Feynman gauge.                            *)
54(*       Changed yd[n] CKM[n,m] to yd[m] CKM[n,m].                           *)
55(*       Changed yu[n] Conjugate[CKM[m,n]] to yu[m] Conjugate[CKM[m,n]].     *)
56
57(* ************************** *)
58(* *****      vevs      ***** *)
59(* ************************** *)
60M$vevs = { {Phi[2],vev} };
61
62(* ************************** *)
63(* *****  Gauge groups  ***** *)
64(* ************************** *)
65M$GaugeGroups = {
66  U1Y  == {
67    Abelian          -> True, 
68    CouplingConstant -> g1,
69    GaugeBoson       -> B,
70    Charge           -> Y
71  },
72  SU2L == {
73    Abelian           -> False,
74    CouplingConstant  -> gw,
75    GaugeBoson        -> Wi,
76    StructureConstant -> Eps,
77    Representations   -> {Ta,SU2D},
78    Definitions       -> {Ta[a_,b_,c_]->PauliSigma[a,b,c]/2, FSU2L[i_,j_,k_]:> I Eps[i,j,k]}
79  },
80  SU3C == {
81    Abelian           -> False,
82    CouplingConstant  -> gs,
83    GaugeBoson        -> G,
84    StructureConstant -> f,
85    Representations   -> {T,Colour},
86    SymmetricTensor   -> dSUN
87  }
88};
89
90
91(* ************************** *)
92(* *****    Indices     ***** *)
93(* ************************** *)
94
95IndexRange[Index[SU2W      ]] = Unfold[Range[3]];
96IndexRange[Index[SU2D      ]] = Unfold[Range[2]];
97IndexRange[Index[Gluon     ]] = NoUnfold[Range[8]];
98IndexRange[Index[Colour    ]] = NoUnfold[Range[3]];
99IndexRange[Index[Generation]] = Range[3];
100
101IndexStyle[SU2W,       j];
102IndexStyle[SU2D,       k];
103IndexStyle[Gluon,      a];
104IndexStyle[Colour,     m];
105IndexStyle[Generation, f];
106
107
108(* ************************** *)
109(* *** Interaction orders *** *)
110(* ***  (as used by mg5)  *** *)
111(* ************************** *)
112
113M$InteractionOrderHierarchy = {
114  {QCD, 1},
115  {QED, 2}
116};
117
118
119(* ************************** *)
120(* **** Particle classes **** *)
121(* ************************** *)
122M$ClassesDescription = {
123
124(* Gauge bosons: physical vector fields *)
125  V[1] == {
126    ClassName       -> A,
127    SelfConjugate   -> True, 
128    Mass            -> 0, 
129    Width           -> 0, 
130    ParticleName    -> "a",
131    PDG             -> 22,
132    PropagatorLabel -> "a",
133    PropagatorType  -> W,
134    PropagatorArrow -> None,
135    FullName        -> "Photon"
136  },
137  V[2] == {
138    ClassName       -> Z,
139    SelfConjugate   -> True,
140    Mass            -> {MZ, 91.1876},
141    Width           -> {WZ, 2.4952},
142    ParticleName    -> "Z",
143    PDG             -> 23,
144    PropagatorLabel -> "Z",
145    PropagatorType  -> Sine,
146    PropagatorArrow -> None,
147    FullName        -> "Z"
148  },
149  V[3] == {
150    ClassName        -> W,
151    SelfConjugate    -> False,
152    Mass             -> {MW, Internal},
153    Width            -> {WW, 2.085},
154    ParticleName     -> "W+",
155    AntiParticleName -> "W-",
156    QuantumNumbers   -> {Q -> 1},
157    PDG              -> 24,
158    PropagatorLabel  -> "W",
159    PropagatorType   -> Sine,
160    PropagatorArrow  -> Forward,
161    FullName         -> "W"
162  },
163  V[4] == {
164    ClassName        -> G,
165    SelfConjugate    -> True,
166    Indices          -> {Index[Gluon]},
167    Mass             -> 0,
168    Width            -> 0,
169    ParticleName     -> "g",
170    PDG              -> 21,
171    PropagatorLabel  -> "G",
172    PropagatorType   -> C,
173    PropagatorArrow  -> None,
174    FullName         -> "G"
175  },
176
177(* Ghosts: related to physical gauge bosons *)
178  U[1] == {
179    ClassName       -> ghA,
180    SelfConjugate   -> False,
181    Ghost           -> A,
182    QuantumNumbers  -> {GhostNumber -> 1},
183    Mass            -> 0,
184    Width           -> 0,
185    PropagatorLabel -> "uA",
186    PropagatorType  -> GhostDash,
187    PropagatorArrow -> Forward
188  },
189  U[2] == {
190    ClassName       -> ghZ,
191    SelfConjugate   -> False,
192    Ghost           -> Z,
193    QuantumNumbers  -> {GhostNumber -> 1},
194    Mass            -> {MZ,91.1876}, 
195    Width           -> {WZ, 2.4952},
196    PropagatorLabel -> "uZ",
197    PropagatorType  -> GhostDash,
198    PropagatorArrow -> Forward
199  },
200  U[31] == {
201    ClassName       -> ghWp,
202    SelfConjugate   -> False,
203    Ghost           -> W,
204    QuantumNumbers  -> {GhostNumber -> 1, Q -> 1},
205    Mass            -> {MW,Internal},
206    Width           -> {WW, 2.085},
207    PropagatorLabel -> "uWp",
208    PropagatorType  -> GhostDash,
209    PropagatorArrow -> Forward
210  },
211  U[32] == {
212    ClassName       -> ghWm,
213    SelfConjugate   -> False,
214    Ghost           -> Wbar,
215    QuantumNumbers  -> {GhostNumber -> 1, Q -> -1},
216    Mass            -> {MW,Internal},
217    Width           -> {WW, 2.085},
218    PropagatorLabel -> "uWm",
219    PropagatorType  -> GhostDash,
220    PropagatorArrow -> Forward
221  },
222  U[4] == {
223    ClassName       -> ghG,
224    SelfConjugate   -> False,
225    Indices         -> {Index[Gluon]},
226    Ghost           -> G,
227    PDG             -> 82,
228    QuantumNumbers  ->{GhostNumber -> 1},
229    Mass            -> 0,
230    Width           -> 0,
231    PropagatorLabel -> "uG",
232    PropagatorType  -> GhostDash,
233    PropagatorArrow -> Forward
234  },
235
236(* Gauge bosons: unphysical vector fields *)
237  V[11] == {
238    ClassName     -> B,
239    Unphysical    -> True,
240    SelfConjugate -> True,
241    Definitions   -> { B[mu_] -> -sw Z[mu]+cw A[mu]}
242  },
243  V[12] == {
244    ClassName     -> Wi,
245    Unphysical    -> True,
246    SelfConjugate -> True,
247    Indices       -> {Index[SU2W]},
248    FlavorIndex   -> SU2W,
249    Definitions   -> { Wi[mu_,1] -> (Wbar[mu]+W[mu])/Sqrt[2], Wi[mu_,2] -> (Wbar[mu]-W[mu])/(I*Sqrt[2]), Wi[mu_,3] -> cw Z[mu] + sw A[mu]}
250  },
251
252(* Ghosts: related to unphysical gauge bosons *)
253  U[11] == {
254    ClassName     -> ghB,
255    Unphysical    -> True,
256    SelfConjugate -> False,
257    Ghost         -> B,
258    Definitions   -> { ghB -> -sw ghZ + cw ghA}
259  },
260  U[12] == {
261    ClassName     -> ghWi,
262    Unphysical    -> True,
263    SelfConjugate -> False,
264    Ghost         -> Wi,
265    Indices       -> {Index[SU2W]},
266    FlavorIndex   -> SU2W,
267    Definitions   -> { ghWi[1] -> (ghWp+ghWm)/Sqrt[2], ghWi[2] -> (ghWm-ghWp)/(I*Sqrt[2]), ghWi[3] -> cw ghZ+sw ghA}
268  } ,
269
270(* Fermions: physical fields *)
271  F[1] == {
272    ClassName        -> vl,
273    ClassMembers     -> {ve,vm,vt},
274    Indices          -> {Index[Generation]},
275    FlavorIndex      -> Generation,
276    SelfConjugate    -> False,
277    Mass             -> 0,
278    Width            -> 0,
279    QuantumNumbers   -> {LeptonNumber -> 1},
280    PropagatorLabel  -> {"v", "ve", "vm", "vt"} ,
281    PropagatorType   -> S,
282    PropagatorArrow  -> Forward,
283    PDG              -> {12,14,16},
284    ParticleName     -> {"ve","vm","vt"},
285    AntiParticleName -> {"ve~","vm~","vt~"},
286    FullName         -> {"Electron-neutrino", "Mu-neutrino", "Tau-neutrino"}
287  },
288  F[2] == {
289    ClassName        -> l,
290    ClassMembers     -> {e, mu, ta},
291    Indices          -> {Index[Generation]},
292    FlavorIndex      -> Generation,
293    SelfConjugate    -> False,
294    Mass             -> {Ml, {Me,5.11*^-4}, {MMU,0.10566}, {MTA,1.777}},
295    Width            -> 0,
296    QuantumNumbers   -> {Q -> -1, LeptonNumber -> 1},
297    PropagatorLabel  -> {"l", "e", "mu", "ta"},
298    PropagatorType   -> Straight,
299    PropagatorArrow  -> Forward,
300    PDG              -> {11, 13, 15},
301    ParticleName     -> {"e-", "mu-", "ta-"},
302    AntiParticleName -> {"e+", "mu+", "ta+"},
303    FullName         -> {"Electron", "Muon", "Tau"}
304  },
305  F[3] == {
306    ClassName        -> uq,
307    ClassMembers     -> {u, c, t},
308    Indices          -> {Index[Generation], Index[Colour]},
309    FlavorIndex      -> Generation,
310    SelfConjugate    -> False,
311    Mass             -> {Mu, {MU, 2.55*^-3}, {MC,1.27}, {MT,172}},
312    Width            -> {0, 0, {WT,1.50833649}},
313    QuantumNumbers   -> {Q -> 2/3},
314    PropagatorLabel  -> {"uq", "u", "c", "t"},
315    PropagatorType   -> Straight,
316    PropagatorArrow  -> Forward,
317    PDG              -> {2, 4, 6},
318    ParticleName     -> {"u",  "c",  "t" },
319    AntiParticleName -> {"u~", "c~", "t~"},
320    FullName         -> {"u-quark", "c-quark", "t-quark"}
321  },
322  F[4] == {
323    ClassName        -> dq,
324    ClassMembers     -> {d, s, b},
325    Indices          -> {Index[Generation], Index[Colour]},
326    FlavorIndex      -> Generation,
327    SelfConjugate    -> False,
328    Mass             -> {Md, {MD,5.04*^-3}, {MS,0.101}, {MB,4.7}},
329    Width            -> 0,
330    QuantumNumbers   -> {Q -> -1/3},
331    PropagatorLabel  -> {"dq", "d", "s", "b"},
332    PropagatorType   -> Straight,
333    PropagatorArrow  -> Forward,
334    PDG              -> {1,3,5},
335    ParticleName     -> {"d",  "s",  "b" },
336    AntiParticleName -> {"d~", "s~", "b~"},
337    FullName         -> {"d-quark", "s-quark", "b-quark"}
338  },
339
340(* Fermions: unphysical fields *)
341  F[11] == {
342    ClassName      -> LL,
343    Unphysical     -> True,
344    Indices        -> {Index[SU2D], Index[Generation]},
345    FlavorIndex    -> SU2D,
346    SelfConjugate  -> False,
347    QuantumNumbers -> {Y -> -1/2},
348    Definitions    -> { LL[sp1_,1,ff_] :> Module[{sp2}, ProjM[sp1,sp2] vl[sp2,ff]], LL[sp1_,2,ff_] :> Module[{sp2}, ProjM[sp1,sp2] l[sp2,ff]] }
349  },
350  F[12] == {
351    ClassName      -> lR,
352    Unphysical     -> True,
353    Indices        -> {Index[Generation]},
354    FlavorIndex    -> Generation,
355    SelfConjugate  -> False,
356    QuantumNumbers -> {Y -> -1},
357    Definitions    -> { lR[sp1_,ff_] :> Module[{sp2}, ProjP[sp1,sp2] l[sp2,ff]] }
358  },
359  F[13] == {
360    ClassName      -> QL,
361    Unphysical     -> True,
362    Indices        -> {Index[SU2D], Index[Generation], Index[Colour]},
363    FlavorIndex    -> SU2D,
364    SelfConjugate  -> False,
365    QuantumNumbers -> {Y -> 1/6},
366    Definitions    -> {
367      QL[sp1_,1,ff_,cc_] :> Module[{sp2}, ProjM[sp1,sp2] uq[sp2,ff,cc]],
368      QL[sp1_,2,ff_,cc_] :> Module[{sp2,ff2}, CKM[ff,ff2] ProjM[sp1,sp2] dq[sp2,ff2,cc]] }
369  },
370  F[14] == {
371    ClassName      -> uR,
372    Unphysical     -> True,
373    Indices        -> {Index[Generation], Index[Colour]},
374    FlavorIndex    -> Generation,
375    SelfConjugate  -> False,
376    QuantumNumbers -> {Y -> 2/3},
377    Definitions    -> { uR[sp1_,ff_,cc_] :> Module[{sp2}, ProjP[sp1,sp2] uq[sp2,ff,cc]] }
378  },
379  F[15] == {
380    ClassName      -> dR,
381    Unphysical     -> True,
382    Indices        -> {Index[Generation], Index[Colour]},
383    FlavorIndex    -> Generation,
384    SelfConjugate  -> False,
385    QuantumNumbers -> {Y -> -1/3},
386    Definitions    -> { dR[sp1_,ff_,cc_] :> Module[{sp2}, ProjP[sp1,sp2] dq[sp2,ff,cc]] }
387  },
388
389(* Higgs: physical scalars  *)
390  S[1] == {
391    ClassName       -> H,
392    SelfConjugate   -> True,
393    Mass            -> {MH,125},
394    Width           -> {WH,0.00407},
395    PropagatorLabel -> "H",
396    PropagatorType  -> D,
397    PropagatorArrow -> None,
398    PDG             -> 25,
399    ParticleName    -> "H",
400    FullName        -> "H"
401  },
402
403(* Higgs: physical scalars  *)
404  S[2] == {
405    ClassName       -> G0,
406    SelfConjugate   -> True,
407    Goldstone       -> Z,
408    Mass            -> {MZ, 91.1876},
409    Width           -> {WZ, 2.4952},
410    PropagatorLabel -> "Go",
411    PropagatorType  -> D,
412    PropagatorArrow -> None,
413    PDG             -> 250,
414    ParticleName    -> "G0",
415    FullName        -> "G0"
416  },
417  S[3] == {
418    ClassName        -> GP,
419    SelfConjugate    -> False,
420    Goldstone        -> W,
421    Mass             -> {MW, Internal},
422    QuantumNumbers   -> {Q -> 1},
423    Width            -> {WW, 2.085},
424    PropagatorLabel  -> "GP",
425    PropagatorType   -> D,
426    PropagatorArrow  -> None,
427    PDG              -> 251,
428    ParticleName     -> "G+",
429    AntiParticleName -> "G-",
430    FullName         -> "GP"
431  },
432
433(* Higgs: unphysical scalars  *)
434  S[11] == {
435    ClassName      -> Phi,
436    Unphysical     -> True,
437    Indices        -> {Index[SU2D]},
438    FlavorIndex    -> SU2D,
439    SelfConjugate  -> False,
440    QuantumNumbers -> {Y -> 1/2},
441    Definitions    -> { Phi[1] -> -I GP, Phi[2] -> (vev + H + I G0)/Sqrt[2]  }
442  }
443};
444
445
446(* ************************** *)
447(* *****     Gauge      ***** *)
448(* *****   Parameters   ***** *)
449(* *****   (FeynArts)   ***** *)
450(* ************************** *)
451
452GaugeXi[ V[1]  ] = GaugeXi[A];
453GaugeXi[ V[2]  ] = GaugeXi[Z];
454GaugeXi[ V[3]  ] = GaugeXi[W];
455GaugeXi[ V[4]  ] = GaugeXi[G];
456GaugeXi[ S[1]  ] = 1;
457GaugeXi[ S[2]  ] = GaugeXi[Z];
458GaugeXi[ S[3]  ] = GaugeXi[W];
459GaugeXi[ U[1]  ] = GaugeXi[A];
460GaugeXi[ U[2]  ] = GaugeXi[Z];
461GaugeXi[ U[31] ] = GaugeXi[W];
462GaugeXi[ U[32] ] = GaugeXi[W];
463GaugeXi[ U[4]  ] = GaugeXi[G];
464
465
466(* ************************** *)
467(* *****   Parameters   ***** *)
468(* ************************** *)
469M$Parameters = {
470
471  (* External parameters *)
472  aEWM1 == {
473    ParameterType    -> External,
474    BlockName        -> SMINPUTS,
475    OrderBlock       -> 1,
476    Value            -> 127.9,
477    InteractionOrder -> {QED,-2},
478    Description      -> "Inverse of the EW coupling constant at the Z pole"
479  },
480  Gf == {
481    ParameterType    -> External,
482    BlockName        -> SMINPUTS,
483    OrderBlock       -> 2,
484    Value            -> 1.16637*^-5,
485    InteractionOrder -> {QED,2},
486    TeX              -> Subscript[G,f],
487    Description      -> "Fermi constant"
488  },
489  aS    == {
490    ParameterType    -> External,
491    BlockName        -> SMINPUTS,
492    OrderBlock       -> 3,
493    Value            -> 0.1184,
494    InteractionOrder -> {QCD,2},
495    TeX              -> Subscript[\[Alpha],s],
496    Description      -> "Strong coupling constant at the Z pole"
497  },
498  ymdo == {
499    ParameterType -> External,
500    BlockName     -> YUKAWA,
501    OrderBlock    -> 1,
502    Value         -> 5.04*^-3,
503    Description   -> "Down Yukawa mass"
504  },
505  ymup == {
506    ParameterType -> External,
507    BlockName     -> YUKAWA,
508    OrderBlock    -> 2,
509    Value         -> 2.55*^-3,
510    Description   -> "Up Yukawa mass"
511  },
512  yms == {
513    ParameterType -> External,
514    BlockName     -> YUKAWA,
515    OrderBlock    -> 3,
516    Value         -> 0.101,
517    Description   -> "Strange Yukawa mass"
518  },
519  ymc == {
520    ParameterType -> External,
521    BlockName     -> YUKAWA,
522    OrderBlock    -> 4,
523    Value         -> 1.27,
524    Description   -> "Charm Yukawa mass"
525  },
526  ymb == {
527    ParameterType -> External,
528    BlockName     -> YUKAWA,
529    OrderBlock    -> 5,
530    Value         -> 4.7,
531    Description   -> "Bottom Yukawa mass"
532  },
533  ymt == {
534    ParameterType -> External,
535    BlockName     -> YUKAWA,
536    OrderBlock    -> 6,
537    Value         -> 172,
538    Description   -> "Top Yukawa mass"
539  },
540  yme == {
541    ParameterType -> External,
542    BlockName     -> YUKAWA,
543    OrderBlock    -> 11,
544    Value         -> 5.11*^-4,
545    Description   -> "Electron Yukawa mass"
546  },
547  ymm == {
548    ParameterType -> External,
549    BlockName     -> YUKAWA,
550    OrderBlock    -> 13,
551    Value         -> 0.10566,
552    Description   -> "Muon Yukawa mass"
553  },
554  ymtau == {
555    ParameterType -> External,
556    BlockName     -> YUKAWA,
557    OrderBlock    -> 15,
558    Value         -> 1.777,
559    Description   -> "Tau Yukawa mass"
560  },
561  cabi == {
562    ParameterType -> External,
563    BlockName     -> CKMBLOCK,
564    OrderBlock    -> 1,
565    Value         -> 0.227736,
566    TeX           -> Subscript[\[Theta], c],
567    Description   -> "Cabibbo angle"
568  },
569
570  (* Internal Parameters *)
571  aEW == {
572    ParameterType    -> Internal,
573    Value            -> 1/aEWM1,
574    InteractionOrder -> {QED,2},
575    TeX              -> Subscript[\[Alpha], EW],
576    Description      -> "Electroweak coupling contant"
577  },
578  MW == {
579    ParameterType -> Internal,
580    Value         -> Sqrt[MZ^2/2+Sqrt[MZ^4/4-Pi/Sqrt[2]*aEW/Gf*MZ^2]],
581    TeX           -> Subscript[M,W],
582    Description   -> "W mass"
583  },
584  sw2 == {
585    ParameterType -> Internal,
586    Value         -> 1-(MW/MZ)^2,
587    Description   -> "Squared Sin of the Weinberg angle"
588  },
589  ee == {
590    ParameterType    -> Internal,
591    Value            -> Sqrt[4 Pi aEW],
592    InteractionOrder -> {QED,1},
593    TeX              -> e, 
594    Description      -> "Electric coupling constant"
595  },
596  cw == {
597    ParameterType -> Internal,
598    Value         -> Sqrt[1-sw2],
599    TeX           -> Subscript[c,w],
600    Description   -> "Cosine of the Weinberg angle"
601  },
602  sw == {
603    ParameterType -> Internal,
604    Value         -> Sqrt[sw2],
605    TeX           -> Subscript[s,w],
606    Description   -> "Sine of the Weinberg angle"
607  },
608  gw == {
609    ParameterType    -> Internal,
610    Definitions      -> {gw->ee/sw},
611    InteractionOrder -> {QED,1}, 
612    TeX              -> Subscript[g,w],
613    Description      -> "Weak coupling constant at the Z pole"
614  },
615  g1 == {
616    ParameterType    -> Internal,
617    Definitions      -> {g1->ee/cw},
618    InteractionOrder -> {QED,1}, 
619    TeX              -> Subscript[g,1],
620    Description      -> "U(1)Y coupling constant at the Z pole"
621  },
622  gs == {
623    ParameterType    -> Internal,
624    Value            -> Sqrt[4 Pi aS],
625    InteractionOrder -> {QCD,1}, 
626    TeX              -> Subscript[g,s],
627    ParameterName    -> G,
628    Description      -> "Strong coupling constant at the Z pole"
629  },
630  vev == {
631    ParameterType    -> Internal,
632    Value            -> 2*MW*sw/ee,
633    InteractionOrder -> {QED,-1},
634    Description      -> "Higgs vacuum expectation value"
635  },
636  lam == {
637    ParameterType    -> Internal,
638    Value            -> MH^2/(2*vev^2),
639    InteractionOrder -> {QED, 2},
640    Description      -> "Higgs quartic coupling"
641  },
642  muH == {
643    ParameterType -> Internal,
644    Value         -> Sqrt[vev^2 lam],
645    TeX           -> \[Mu],
646    Description   -> "Coefficient of the quadratic piece of the Higgs potential"
647  },
648  yl == {
649    ParameterType    -> Internal,
650    Indices          -> {Index[Generation], Index[Generation]},
651    Definitions      -> {yl[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j)},
652    Value            -> {yl[1,1] -> Sqrt[2] yme / vev, yl[2,2] -> Sqrt[2] ymm / vev, yl[3,3] -> Sqrt[2] ymtau / vev},
653    InteractionOrder -> {QED, 1},
654    ParameterName    -> {yl[1,1] -> ye, yl[2,2] -> ym, yl[3,3] -> ytau},
655    TeX              -> Superscript[y, l],
656    Description      -> "Lepton Yukawa couplings"
657  },
658  yu == {
659    ParameterType    -> Internal,
660    Indices          -> {Index[Generation], Index[Generation]},
661    Definitions      -> {yu[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j)},
662    Value            -> {yu[1,1] -> Sqrt[2] ymup/vev, yu[2,2] -> Sqrt[2] ymc/vev, yu[3,3] -> Sqrt[2] ymt/vev},
663    InteractionOrder -> {QED, 1},
664    ParameterName    -> {yu[1,1] -> yup, yu[2,2] -> yc, yu[3,3] -> yt},
665    TeX              -> Superscript[y, u],
666    Description      -> "Up-type Yukawa couplings"
667  },
668  yd == {
669    ParameterType    -> Internal,
670    Indices          -> {Index[Generation], Index[Generation]},
671    Definitions      -> {yd[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j)},
672    Value            -> {yd[1,1] -> Sqrt[2] ymdo/vev, yd[2,2] -> Sqrt[2] yms/vev, yd[3,3] -> Sqrt[2] ymb/vev},
673    InteractionOrder -> {QED, 1},
674    ParameterName    -> {yd[1,1] -> ydo, yd[2,2] -> ys, yd[3,3] -> yb},
675    TeX              -> Superscript[y, d],
676    Description      -> "Down-type Yukawa couplings"
677  },
678(* N. B. : only Cabibbo mixing! *)
679  CKM == {
680    ParameterType -> Internal,
681    Indices       -> {Index[Generation], Index[Generation]},
682    Unitary       -> True,
683    Value         -> {CKM[1,1] -> Cos[cabi],  CKM[1,2] -> Sin[cabi], CKM[1,3] -> 0,
684                      CKM[2,1] -> -Sin[cabi], CKM[2,2] -> Cos[cabi], CKM[2,3] -> 0,
685                      CKM[3,1] -> 0,          CKM[3,2] -> 0,         CKM[3,3] -> 1},
686    TeX         -> Superscript[V,CKM],
687    Description -> "CKM-Matrix"}
688};
689
690(* ************************** *)
691(* *****   Lagrangian   ***** *)
692(* ************************** *)
693
694LGauge := Block[{mu,nu,ii,aa},
695  ExpandIndices[-1/4 FS[B,mu,nu] FS[B,mu,nu] - 1/4 FS[Wi,mu,nu,ii] FS[Wi,mu,nu,ii] - 1/4 FS[G,mu,nu,aa] FS[G,mu,nu,aa], FlavorExpand->SU2W]];
696
697LFermions := Block[{mu},
698  ExpandIndices[I*(
699    QLbar.Ga[mu].DC[QL, mu] + LLbar.Ga[mu].DC[LL, mu] + uRbar.Ga[mu].DC[uR, mu] + dRbar.Ga[mu].DC[dR, mu] + lRbar.Ga[mu].DC[lR, mu]),
700  FlavorExpand->{SU2W,SU2D}]/.{CKM[a_,b_] Conjugate[CKM[a_,c_]]->IndexDelta[b,c], CKM[b_,a_] Conjugate[CKM[c_,a_]]->IndexDelta[b,c]}];
701
702LHiggs := Block[{ii,mu, feynmangaugerules},
703  feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
704 
705  ExpandIndices[DC[Phibar[ii],mu] DC[Phi[ii],mu] + muH^2 Phibar[ii] Phi[ii] - lam Phibar[ii] Phi[ii] Phibar[jj] Phi[jj], FlavorExpand->{SU2D,SU2W}]/.feynmangaugerules
706 ];
707
708LYukawa := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
709  feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
710 
711  yuk = ExpandIndices[
712   -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] Phi[ii] -
713    yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] Phi[ii] -
714    yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] Phibar[jj] Eps[ii, jj], FlavorExpand -> SU2D];
715  yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
716  yuk+HC[yuk]/.feynmangaugerules
717 ];
718
719LGhost := Block[{LGh1,LGhw,LGhs,LGhphi,mu, generators,gh,ghbar,Vectorize,phi1,phi2,togoldstones,doublet,doublet0},
720  (* Pure gauge piece *)       
721  LGh1 = -ghBbar.del[DC[ghB,mu],mu];
722  LGhw = -ghWibar.del[DC[ghWi,mu],mu];
723  LGhs = -ghGbar.del[DC[ghG,mu],mu];
724
725  (* Scalar pieces: see Peskin pages 739-742 *)
726  (* phi1 and phi2 are the real degrees of freedom of GP *)
727  (* Vectorize transforms a doublet in a vector in the phi-basis, i.e. the basis of real degrees of freedom *)
728  gh    = {ghB, ghWi[1], ghWi[2], ghWi[3]};
729  ghbar = {ghBbar, ghWibar[1], ghWibar[2], ghWibar[3]};
730  generators = {-I/2 g1 IdentityMatrix[2], -I/2 gw PauliSigma[1], -I/2 gw PauliSigma[2], -I/2 gw PauliSigma[3]};
731  doublet = Expand[{(-I phi1 - phi2)/Sqrt[2], Phi[2]} /. MR$Definitions /. vev -> 0];
732  doublet0 = {0, vev/Sqrt[2]};
733  Vectorize[{a_, b_}]:= Simplify[{Sqrt[2] Re[Expand[a]], Sqrt[2] Im[Expand[a]], Sqrt[2] Re[Expand[b]], Sqrt[2] Im[Expand[b]]}/.{Im[_]->0, Re[num_]->num}];
734  togoldstones := {phi1 -> (GP + GPbar)/Sqrt[2], phi2 -> (-GP + GPbar)/(I Sqrt[2])};
735  LGhphi=Plus@@Flatten[Table[-ghbar[[kkk]].gh[[lll]] Vectorize[generators[[kkk]].doublet0].Vectorize[generators[[lll]].(doublet+doublet0)],{kkk,4},{lll,4}]] /.togoldstones;
736
737ExpandIndices[ LGhs + If[FeynmanGauge, LGh1 + LGhw + LGhphi,0], FlavorExpand->SU2W]];
738
739LSM:= LGauge + LFermions + LHiggs + LYukawa + LGhost;