HiggsTopCurrents: HiggsTopCurrents.fr

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