EWFF4DM: EWFF4DM.fr

File EWFF4DM.fr, 31.0 KB (added by AndrewCheek, 7 weeks 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 = "Singlet Fermion coupling to photons EFT";
16
17M$Information = {
18  Authors      -> {"A.Cheek", "Luca Pagani", "Ken Mimasu", "Chiara Arina"},
19  Version      -> "1.0.0",
20  Date         -> "16. 10. 2019",
21  Institutions -> {"Universite catholique de Louvain (CP3)"},
22  Emails       -> {"andrew.cheek@uclouvain.be", "luca.pagani7@unibo.it", "ken.mimasu@uclouvain.be", "chiara.arina@uclouvain.be"},
23  URLs         -> "NONE"
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(* ************************** *)
59(* *****  Gauge groups  ***** *)
60(* ************************** *)
61M$GaugeGroups = {
62  U1Y  == {
63    Abelian          -> True,
64    CouplingConstant -> g1,
65    GaugeBoson       -> B,
66    Charge           -> Y
67  },
68  SU2L == {
69    Abelian           -> False,
70    CouplingConstant  -> gw,
71    GaugeBoson        -> Wi,
72    StructureConstant -> Eps,
73    Representations   -> {Ta,SU2D},
74    Definitions       -> {Ta[a_,b_,c_]->PauliSigma[a,b,c]/2, FSU2L[i_,j_,k_]:> I Eps[i,j,k]}
75  },
76  SU3C == {
77    Abelian           -> False,
78    CouplingConstant  -> gs,
79    GaugeBoson        -> G,
80    StructureConstant -> f,
81    Representations   -> {T,Colour},
82    SymmetricTensor   -> dSUN
83  }
84};
85
86
87(* ************************** *)
88(* *****    Indices     ***** *)
89(* ************************** *)
90
91IndexRange[Index[SU2W      ]] = Unfold[Range[3]];
92IndexRange[Index[SU2D      ]] = Unfold[Range[2]];
93IndexRange[Index[Gluon     ]] = NoUnfold[Range[8]];
94IndexRange[Index[Colour    ]] = NoUnfold[Range[3]];
95IndexRange[Index[Generation]] = Range[3];
96
97IndexStyle[SU2W,       j];
98IndexStyle[SU2D,       k];
99IndexStyle[Gluon,      a];
100IndexStyle[Colour,     m];
101IndexStyle[Generation, f];
102
103
104(* ************************** *)
105(* *** Interaction orders *** *)
106(* ***  (as used by mg5)  *** *)
107(* ************************** *)
108
109M$InteractionOrderHierarchy = {
110  {NP, 1},
111  {QCD, 2},
112  {QED, 4}
113};
114
115(* ************************** *)
116(* **** Particle classes **** *)
117(* ************************** *)
118M$ClassesDescription = {
119
120(* Gauge bosons: physical vector fields *)
121  V[1] == {
122    ClassName       -> A,
123    SelfConjugate   -> True,
124    Mass            -> 0,
125    Width           -> 0,
126    ParticleName    -> "a",
127    PDG             -> 22,
128    PropagatorLabel -> "a",
129    PropagatorType  -> W,
130    PropagatorArrow -> None,
131    FullName        -> "Photon"
132  },
133  V[2] == {
134    ClassName       -> Z,
135    SelfConjugate   -> True,
136    Mass            -> {MZ, 91.1876},
137    Width           -> {WZ, 2.4952},
138    ParticleName    -> "Z",
139    PDG             -> 23,
140    PropagatorLabel -> "Z",
141    PropagatorType  -> Sine,
142    PropagatorArrow -> None,
143    FullName        -> "Z"
144  },
145  V[3] == {
146    ClassName        -> W,
147    SelfConjugate    -> False,
148    Mass             -> {MW, 79.8244},
149    Width            -> {WW, 2.085},
150    ParticleName     -> "W+",
151    AntiParticleName -> "W-",
152    QuantumNumbers   -> {Q -> 1},
153    PDG              -> 24,
154    PropagatorLabel  -> "W",
155    PropagatorType   -> Sine,
156    PropagatorArrow  -> Forward,
157    FullName         -> "W"
158  },
159  V[4] == {
160    ClassName        -> G,
161    SelfConjugate    -> True,
162    Indices          -> {Index[Gluon]},
163    Mass             -> 0,
164    Width            -> 0,
165    ParticleName     -> "g",
166    PDG              -> 21,
167    PropagatorLabel  -> "G",
168    PropagatorType   -> C,
169    PropagatorArrow  -> None,
170    FullName         -> "G"
171  },
172  (* Ghosts: related to physical gauge bosons *)
173  U[1] == {
174    ClassName       -> ghA,
175    SelfConjugate   -> False,
176    Ghost           -> A,
177    QuantumNumbers  -> {GhostNumber -> 1},
178    Mass            -> 0,
179    Width           -> 0,
180    PropagatorLabel -> "uA",
181    PropagatorType  -> GhostDash,
182    PropagatorArrow -> Forward
183  },
184  U[2] == {
185    ClassName       -> ghZ,
186    SelfConjugate   -> False,
187    Ghost           -> Z,
188    QuantumNumbers  -> {GhostNumber -> 1},
189    Mass            -> {MZ, 91.1876},
190    Width           -> {WZ, 2.4952},
191    PropagatorLabel -> "uZ",
192    PropagatorType  -> GhostDash,
193    PropagatorArrow -> Forward
194  },
195  U[31] == {
196    ClassName       -> ghWp,
197    SelfConjugate   -> False,
198    Ghost           -> W,
199    QuantumNumbers  -> {GhostNumber -> 1, Q -> 1},
200    Mass            -> {MW, 79.8244},
201    Width           -> {WW, 2.085},
202    PropagatorLabel -> "uWp",
203    PropagatorType  -> GhostDash,
204    PropagatorArrow -> Forward
205  },
206  U[32] == {
207    ClassName       -> ghWm,
208    SelfConjugate   -> False,
209    Ghost           -> Wbar,
210    QuantumNumbers  -> {GhostNumber -> 1, Q -> -1},
211    Mass            -> {MW, 79.8244},
212    Width           -> {WW, 2.085},
213    PropagatorLabel -> "uWm",
214    PropagatorType  -> GhostDash,
215    PropagatorArrow -> Forward
216  },
217  U[4] == {
218    ClassName       -> ghG,
219    SelfConjugate   -> False,
220    Indices         -> {Index[Gluon]},
221    Ghost           -> G,
222    QuantumNumbers  ->{GhostNumber -> 1},
223    Mass            -> 0,
224    Width           -> 0,
225    PropagatorLabel -> "uG",
226    PropagatorType  -> GhostDash,
227    PropagatorArrow -> Forward
228  },
229
230(* Gauge bosons: unphysical vector fields *)
231  V[11] == {
232    ClassName     -> B,
233    Unphysical    -> True,
234    SelfConjugate -> True,
235    Definitions   -> {
236      B[mu_] ->(cw*A[mu] + sw*Z[mu])
237    }
238  },
239  V[12] == {
240    ClassName     -> Wi,
241    Unphysical    -> True,
242    SelfConjugate -> True,
243    Indices       -> {Index[SU2W]},
244    FlavorIndex   -> SU2W,
245    Definitions   -> {
246      Wi[mu_,1] -> ( Wbar[mu] + W[mu] )/Sqrt[2],
247      Wi[mu_,2] -> ( Wbar[mu] - W[mu] )/(I*Sqrt[2]),
248      Wi[mu_,3] -> ( sw*A[mu] - cw*Z[mu] )
249    }
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],
268                       ghWi[2] -> (ghWm - ghWp)/(I*Sqrt[2]),
269                       ghWi[3] -> cw ghZ + sw ghA }
270  } ,
271
272(* Fermions: physical fields *)
273  F[1] == {
274    ClassName        -> vl,
275    ClassMembers     -> {ve, vm, vt},
276    Indices          -> {Index[Generation]},
277    FlavorIndex      -> Generation,
278    SelfConjugate    -> False,
279    Mass             -> 0,
280    Width            -> 0,
281    QuantumNumbers   -> {LeptonNumber -> 1},
282    PropagatorLabel  -> {"v", "ve", "vm", "vt"} ,
283    PropagatorType   -> S,
284    PropagatorArrow  -> Forward,
285    PDG              -> {12,14,16},
286    ParticleName     -> {"ve","vm","vt"},
287    AntiParticleName -> {"ve~","vm~","vt~"},
288    FullName         -> {"Electron-neutrino", "Mu-neutrino", "Tau-neutrino"}
289  },
290  F[2] == {
291    ClassName        -> l,
292    ClassMembers     -> {e, mu, ta},
293    Indices          -> {Index[Generation]},
294    FlavorIndex      -> Generation,
295    SelfConjugate    -> False,
296    Mass             -> {Ml, {Me,5.11*^-4}, {MM,0.10566}, {MTA,1.777}},
297    Width            -> 0,
298    QuantumNumbers   -> {Q -> -1, LeptonNumber -> 1},
299    PropagatorLabel  -> {"l", "e", "mu", "ta"},
300    PropagatorType   -> Straight,
301    PropagatorArrow  -> Forward,
302    PDG              -> {11, 13, 15},
303    ParticleName     -> {"e-", "mu-", "ta-"},
304    AntiParticleName -> {"e+", "mu+", "ta+"},
305    FullName         -> {"Electron", "Muon", "Tau"}
306  },
307  F[3] == {
308    ClassName        -> uq,
309    ClassMembers     -> {u, c, t},
310    Indices          -> {Index[Generation], Index[Colour]},
311    FlavorIndex      -> Generation,
312    SelfConjugate    -> False,
313    Mass             -> {Mu, {MU, 2.55*^-3}, {MC,1.27}, {MT,172}},
314    Width            -> {0, 0, {WT,1.50833649}},
315    QuantumNumbers   -> {Q -> 2/3},
316    PropagatorLabel  -> {"uq", "u", "c", "t"},
317    PropagatorType   -> Straight,
318    PropagatorArrow  -> Forward,
319    PDG              -> {2, 4, 6},
320    ParticleName     -> {"u",  "c",  "t" },
321    AntiParticleName -> {"u~", "c~", "t~"},
322    FullName         -> {"u-quark", "c-quark", "t-quark"}
323  },
324  F[4] == {
325    ClassName        -> dq,
326    ClassMembers     -> {d, s, b},
327    Indices          -> {Index[Generation], Index[Colour]},
328    FlavorIndex      -> Generation,
329    SelfConjugate    -> False,
330    Mass             -> {Md, {MD,5.04*^-3}, {MS,0.101}, {MB,4.7}},
331    Width            -> 0,
332    QuantumNumbers   -> {Q -> -1/3},
333    PropagatorLabel  -> {"dq", "d", "s", "b"},
334    PropagatorType   -> Straight,
335    PropagatorArrow  -> Forward,
336    PDG              -> {1,3,5},
337    ParticleName     -> {"d",  "s",  "b" },
338    AntiParticleName -> {"d~", "s~", "b~"},
339    FullName         -> {"d-quark", "s-quark", "b-quark"}
340  },
341
342(* Fermions: unphysical fields *)
343  F[11] == {
344    ClassName      -> LL,
345    Unphysical     -> True,
346    Indices        -> {Index[SU2D], Index[Generation]},
347    FlavorIndex    -> SU2D,
348    SelfConjugate  -> False,
349    QuantumNumbers -> {Y -> -1/2},
350    Definitions    -> {
351      LL[sp1_,1,ff_] :> Module[{sp2}, ProjM[sp1,sp2] vl[sp2,ff]],
352      LL[sp1_,2,ff_] :> Module[{sp2}, ProjM[sp1,sp2] l[sp2,ff]]
353    }
354  },
355  F[12] == {
356    ClassName      -> lR,
357    Unphysical     -> True,
358    Indices        -> {Index[Generation]},
359    FlavorIndex    -> Generation,
360    SelfConjugate  -> False,
361    QuantumNumbers -> {Y -> -1},
362    Definitions    -> {
363      lR[sp1_,ff_] :> Module[{sp2}, ProjP[sp1,sp2] l[sp2,ff]]
364    }
365  },
366  F[13] == {
367    ClassName      -> QL,
368    Unphysical     -> True,
369    Indices        -> {Index[SU2D], Index[Generation], Index[Colour]},
370    FlavorIndex    -> SU2D,
371    SelfConjugate  -> False,
372    QuantumNumbers -> {Y -> 1/6},
373    Definitions    -> {
374      QL[sp1_,1,ff_,cc_] :> Module[{sp2}, ProjM[sp1,sp2] uq[sp2,ff,cc]],
375      QL[sp1_,2,ff_,cc_] :> Module[{sp2,ff2},
376                              CKM[ff,ff2] ProjM[sp1,sp2] dq[sp2,ff2,cc]
377                            ]
378    }
379  },
380  F[14] == {
381    ClassName      -> uR,
382    Unphysical     -> True,
383    Indices        -> {Index[Generation], Index[Colour]},
384    FlavorIndex    -> Generation,
385    SelfConjugate  -> False,
386    QuantumNumbers -> {Y -> 2/3},
387    Definitions    -> {
388      uR[sp1_,ff_,cc_] :> Module[{sp2}, ProjP[sp1,sp2] uq[sp2,ff,cc]]
389    }
390  },
391  F[15] == {
392    ClassName      -> dR,
393    Unphysical     -> True,
394    Indices        -> {Index[Generation], Index[Colour]},
395    FlavorIndex    -> Generation,
396    SelfConjugate  -> False,
397    QuantumNumbers -> {Y -> -1/3},
398    Definitions    -> {
399      dR[sp1_,ff_,cc_] :> Module[{sp2}, ProjP[sp1,sp2] dq[sp2,ff,cc]]
400    }
401  },
402
403(* Fermionic DM candidates *)
404  F[16] == {
405    ClassName        -> Chi,
406    SelfConjugate    -> True,
407    Mass             -> {MChi, 10.},
408    PropagatorLabel  -> "X" ,
409    PropagatorType   -> Straight,
410    PDG              -> {9990},
411    Width            -> 0,
412    ParticleName     -> {"Chi"},
413    FullName         -> {"Dark Majorana fermion singlet"}
414  },
415
416  F[17] == {
417    ClassName        -> Psi,
418    SelfConjugate    -> False,
419    Mass             -> {MPsi, 10.},
420    PropagatorLabel  -> "Psi" ,
421    PropagatorType   -> Straight,
422    PDG              -> {9991},
423    Width            -> 0,
424    ParticleName     -> {"Psi"},
425    FullName         -> {"Dark Dirac fermion singlet"}
426  },
427
428(* Higgs: physical scalars  *)
429  S[1] == {
430    ClassName       -> H,
431    SelfConjugate   -> True,
432    Mass            -> {MH,125},
433    Width           -> {WH,0.00575308848},
434    PropagatorLabel -> "H",
435    PropagatorType  -> D,
436    PropagatorArrow -> None,
437    PDG             -> 25,
438    ParticleName    -> "H",
439    FullName        -> "H"
440  },
441
442(* Higgs: physical scalars  *)
443  S[2] == {
444    ClassName       -> G0,
445    SelfConjugate   -> True,
446    Goldstone       -> Z,
447    Mass            -> {MZ, 91.1876},
448    Width           -> {WZ, 2.4952},
449    PropagatorLabel -> "Go",
450    PropagatorType  -> D,
451    PropagatorArrow -> None,
452    PDG             -> 250,
453    ParticleName    -> "G0",
454    FullName        -> "G0"
455  },
456  S[3] == {
457    ClassName        -> GP,
458    SelfConjugate    -> False,
459    Goldstone        -> W,
460    Mass             -> {MW, 79.8244},
461    QuantumNumbers   -> {Q -> 1},
462    Width            -> {WW, 2.085},
463    PropagatorLabel  -> "GP",
464    PropagatorType   -> D,
465    PropagatorArrow  -> None,
466    PDG              -> 251,
467    ParticleName     -> "G+",
468    AntiParticleName -> "G-",
469    FullName         -> "GP"
470  },
471
472(* Higgs: unphysical scalars  *)
473  S[11] == {
474    ClassName      -> Phi,
475    Unphysical     -> True,
476    Indices        -> {Index[SU2D]},
477    FlavorIndex    -> SU2D,
478    SelfConjugate  -> False,
479    QuantumNumbers -> {Y -> 1/2},
480    Definitions    -> {
481      Phi[1] -> -I GP,
482    (* Canonical normalisation of Higgs and G0 fields *)
483      Phi[2] -> ( vev + H + I G0 )/Sqrt[2]
484    }
485  }
486};
487
488
489(* ************************** *)
490(* *****     Gauge      ***** *)
491(* *****   Parameters   ***** *)
492(* *****   (FeynArts)   ***** *)
493(* ************************** *)
494
495GaugeXi[ V[1]  ] = GaugeXi[A];
496GaugeXi[ V[2]  ] = GaugeXi[Z];
497GaugeXi[ V[3]  ] = GaugeXi[W];
498GaugeXi[ V[4]  ] = GaugeXi[G];
499GaugeXi[ S[1]  ] = 1;
500GaugeXi[ S[2]  ] = GaugeXi[Z];
501GaugeXi[ S[3]  ] = GaugeXi[W];
502GaugeXi[ U[1]  ] = GaugeXi[A];
503GaugeXi[ U[2]  ] = GaugeXi[Z];
504GaugeXi[ U[31] ] = GaugeXi[W];
505GaugeXi[ U[32] ] = GaugeXi[W];
506GaugeXi[ U[4]  ] = GaugeXi[G];
507
508
509(* ************************** *)
510(* *****   Parameters   ***** *)
511(* ************************** *)
512M$Parameters = {
513
514  (* External parameters *)
515  Gf == {
516    ParameterType    -> External,
517    BlockName        -> SMINPUTS,
518    OrderBlock       -> 2,
519    Value            -> 1.16637*^-5,
520    InteractionOrder -> {QED,2},
521    TeX              -> Subscript[G,f],
522    Description      -> "Fermi constant"
523  },
524  Mreno == {
525    ParameterType    -> External,
526    BlockName        -> Renor,
527    Value            -> 555,
528    TeX              -> Subscript[M,reno],
529    Description      -> "scale for the renormalisation of dim6 op"
530  },
531  aS == {
532    ParameterType    -> External,
533    BlockName        -> SMINPUTS,
534    OrderBlock       -> 3,
535    Value            -> 0.1184,
536    InteractionOrder -> {QCD,2},
537    TeX              -> Subscript[\[Alpha],s],
538    Description      -> "Strong coupling constant at the Z pole"
539  },
540  ymdo == {
541    ParameterType -> External,
542    BlockName     -> YUKAWA,
543    OrderBlock    -> 1,
544    Value         -> 5.04*^-3,
545    Description   -> "Down Yukawa mass"
546  },
547  ymup == {
548    ParameterType -> External,
549    BlockName     -> YUKAWA,
550    OrderBlock    -> 2,
551    Value         -> 2.55*^-3,
552    Description   -> "Up Yukawa mass"
553  },
554  yms == {
555    ParameterType -> External,
556    BlockName     -> YUKAWA,
557    OrderBlock    -> 3,
558    Value         -> 0.101,
559    Description   -> "Strange Yukawa mass"
560  },
561  ymc == {
562    ParameterType -> External,
563    BlockName     -> YUKAWA,
564    OrderBlock    -> 4,
565    Value         -> 1.27,
566    Description   -> "Charm Yukawa mass"
567  },
568  ymb == {
569    ParameterType -> External,
570    BlockName     -> YUKAWA,
571    OrderBlock    -> 5,
572    Value         -> 4.7,
573    Description   -> "Bottom Yukawa mass"
574  },
575  ymt == {
576    ParameterType -> External,
577    BlockName     -> YUKAWA,
578    OrderBlock    -> 6,
579    Value         -> 172,
580    Description   -> "Top Yukawa mass"
581  },
582  yme == {
583    ParameterType -> External,
584    BlockName     -> YUKAWA,
585    OrderBlock    -> 11,
586    Value         -> 5.11*^-4,
587    Description   -> "Electron Yukawa mass"
588  },
589  ymm == {
590    ParameterType -> External,
591    BlockName     -> YUKAWA,
592    OrderBlock    -> 13,
593    Value         -> 0.10566,
594    Description   -> "Muon Yukawa mass"
595  },
596  ymtau == {
597    ParameterType -> External,
598    BlockName     -> YUKAWA,
599    OrderBlock    -> 15,
600    Value         -> 1.777,
601    Description   -> "Tau Yukawa mass"
602  },
603  cabi == {
604    ParameterType -> External,
605    BlockName     -> CKMBLOCK,
606    OrderBlock    -> 1,
607    Value         -> 0.227736,
608    TeX           -> Subscript[\[Theta], c],
609    Description   -> "Cabibbo angle"
610  },
611  (* External parameters *)
612  Lambda == {
613    ParameterType    -> External,
614    BlockName        -> LDARK,
615    OrderBlock       -> 1,
616    Value            -> 100000.,
617    InteractionOrder -> {NP, -1},
618    TeX              -> \[CapitalLambda],
619    Description      -> "EFT cutoff"
620  },
621
622  CAn == {
623    ParameterType    -> External,
624    BlockName        -> LDARK,
625    OrderBlock       -> 2,
626    InteractionOrder -> {QED,1},
627    Value            -> 1.,
628    TeX              -> Subscript[C,An],
629    Description      -> "Anapole coupling"
630  },
631  CBan == {
632    ParameterType    -> External,
633    BlockName        -> LDARK,
634    OrderBlock       -> 3,
635    InteractionOrder -> {QED,1},
636    Value            -> 1.,
637    TeX              -> Subscript[C,Ban],
638    Description      -> "Banapole coupling"
639  },
640
641  CMag == {
642    ParameterType    -> External,
643    BlockName        -> LDARK,
644    OrderBlock       -> 4,
645    InteractionOrder -> {QED,1},
646    Value            -> 1.,
647    TeX              -> Subscript[C,Mag],
648    Description      -> "Magnetic dipole coupling"
649  },
650
651  CBmag == {
652    ParameterType    -> External,
653    BlockName        -> LDARK,
654    OrderBlock       -> 5,
655    InteractionOrder -> {QED,1},
656    Value            -> 1.,
657    TeX              -> Subscript[C,Bmag],
658    Description      -> "B-Magnetic dipole coupling"
659  },
660
661  CElec == {
662    ParameterType    -> External,
663    BlockName        -> LDARK,
664    OrderBlock       -> 6,
665    InteractionOrder -> {QED,1},
666    Value            -> 1.,
667    TeX              -> Subscript[C,Elec],
668    Description      -> "Electric dipole coupling"
669  },
670
671  CBelec == {
672    ParameterType    -> External,
673    BlockName        -> LDARK,
674    OrderBlock       -> 7,
675    InteractionOrder -> {QED,1},
676    Value            -> 1.,
677    TeX              -> Subscript[C,Belec],
678    Description      -> "B-Electric dipole coupling"
679  },
680  Ccr == {
681    ParameterType    -> External,
682    BlockName        -> LDARK,
683    OrderBlock       -> 8,
684    InteractionOrder -> {QED,1},
685    Value            -> 1.,
686    TeX              -> Subscript[C,CR],
687    Description      -> "Charge-Radius coupling"
688  },
689
690  CBcr == {
691    ParameterType    -> External,
692    BlockName        -> LDARK,
693    OrderBlock       -> 9,
694    InteractionOrder -> {QED,1},
695    Value            -> 1.,
696    TeX              -> Subscript[C,Bcr],
697    Description      -> "B Charge-Radius coupling"
698  },
699
700  CDan == {
701    ParameterType    -> External,
702    BlockName        -> LDARK,
703    OrderBlock       -> 10,
704    InteractionOrder -> {QED,1},
705    Value            -> 1.,
706    TeX              -> Subscript[C,Dan],
707    Description      -> "Anapole coupling to Dirac DM"
708  },
709  CBdan == {
710    ParameterType    -> External,
711    BlockName        -> LDARK,
712    OrderBlock       -> 11,
713    InteractionOrder -> {QED,1},
714    Value            -> 1.,
715    TeX              -> Subscript[C,Bdan],
716    Description      -> "Banapole coupling to Dirac"
717  },
718
719
720  (* Internal Parameters *)
721  (* SM inputs *)
722  (* EW parameters *)
723  vev == {
724    ParameterType    -> Internal,
725    Value            -> (
726      Sqrt[ 1/(Sqrt[2]*Gf) ]
727    ),
728    TeX           -> v,
729    InteractionOrder -> {QED,-1},
730    Description      -> "Higgs vacuum expectation value in terms of Gf in the SM"
731  },
732
733  cw == {
734    ParameterType -> Internal,
735    Value         -> MW/MZ ,
736    TeX           -> Subscript[c,w],
737    Description   -> "Cosine of the Weinberg angle in terms of inputs in the SM"
738  },
739
740  sw == {
741    ParameterType -> Internal,
742    Value         -> ( Sqrt[1 - (MW/MZ)^2] ),
743    TeX           -> Subscript[s,w],
744    Description   -> "Sine of the Weinberg angle in terms of inputs in the SM"
745  },
746
747  ee == {
748    ParameterType    -> Internal,
749    Value -> 2*MW*sw/vev,
750    InteractionOrder -> {QED,1},
751    TeX              -> e,
752    Description      -> "Electric coupling constant in terms of inputs in the SM"
753  },
754
755  gw == {
756    ParameterType    -> Internal,
757    Definitions      -> {
758      gw -> ee/sw
759    },
760    InteractionOrder -> {QED,1},
761    TeX              -> Subscript[g,w],
762    Description      -> "Weak coupling constant at the Z pole"
763  },
764
765  g1 == {
766    ParameterType    -> Internal,
767    Definitions      -> {
768      g1 -> ee/cw
769    },
770    InteractionOrder -> {QED,1},
771    TeX              -> Subscript[g,1],
772    Description      -> "U(1)Y coupling constant at the Z pole"
773  },
774
775  gs == {
776    ParameterType    -> Internal,
777    Value            -> Sqrt[4 Pi aS],
778    InteractionOrder -> {QCD,1},
779    TeX              -> Subscript[g,s],
780    ParameterName    -> G,
781    Description      -> "Strong coupling constant at the Z pole"
782  },
783
784  aEW == {
785    ParameterType    -> Internal,
786    Value            -> ee^2/(4*Pi),
787    InteractionOrder -> {QED,2},
788    TeX              -> Subscript[\[Alpha], EW],
789    Description      -> "Electroweak fine structure constant"
790  },
791
792  aEWM1 == {
793    ParameterType    -> Internal,
794    OrderBlock       -> 1,
795    Value            -> 1/aEW,
796    InteractionOrder -> {QED,-2},
797    Description      -> "Inverse of the EW coupling constant at the Z pole"
798  },
799
800  lam == {
801    ParameterType    -> Internal,
802    Definitions      -> {
803      lam -> (MH^2)/(2*vev^2)
804    },
805    InteractionOrder -> {QED, 2},
806    Description      -> "Higgs quartic coupling"
807  },
808
809  muH == {
810    ParameterType -> Internal,
811    Definitions   -> { muH -> MH/Sqrt[2] },
812    TeX           -> \[Mu],
813    Description   -> "Mass parameter of the Higgs potential in terms of inputs in the SM"
814  },
815
816  yl == {
817    ParameterType    -> Internal,
818    Indices          -> {Index[Generation], Index[Generation]},
819    Definitions      -> {
820      yl[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j),
821      yl[1,1] -> Sqrt[2] yme  / vev ,
822      yl[2,2] -> Sqrt[2] ymm  / vev ,
823      yl[3,3] -> Sqrt[2] ymtau/ vev
824    },
825    InteractionOrder -> {QED, 1},
826    ParameterName    -> {yl[1,1] -> ye, yl[2,2] -> ym, yl[3,3] -> ytau},
827    TeX              -> Superscript[y, l],
828    Description      -> "Lepton Yukawa couplings"
829  },
830
831  yu == {
832    ParameterType    -> Internal,
833    Indices          -> {Index[Generation], Index[Generation]},
834    Definitions      -> {
835      yu[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j),
836      yu[1,1] -> Sqrt[2] ymup/ vev,
837      yu[2,2] -> Sqrt[2] ymc / vev,
838      yu[3,3] -> Sqrt[2] ymt / vev
839    },
840    InteractionOrder -> {QED, 1},
841    ParameterName    -> {yu[1,1] -> yup, yu[2,2] -> yc, yu[3,3] -> yt},
842    TeX              -> Superscript[y, u],
843    Description      -> "Up-type Yukawa couplings"
844  },
845
846  yd == {
847    ParameterType    -> Internal,
848    Indices          -> {Index[Generation], Index[Generation]},
849    Definitions      -> {
850      yd[i_?NumericQ, j_?NumericQ] :> 0  /; (i =!= j),
851      yd[1,1] -> Sqrt[2] ymdo/ vev,
852      yd[2,2] -> Sqrt[2] yms / vev,
853      yd[3,3] -> Sqrt[2] ymb / vev
854    },
855    InteractionOrder -> {QED, 1},
856    ParameterName    -> {yd[1,1] -> ydo, yd[2,2] -> ys, yd[3,3] -> yb},
857    TeX              -> Superscript[y, d],
858    Description      -> "Down-type Yukawa couplings"
859  },
860
861(* N. B. : only Cabibbo mixing! *)
862  CKM == {
863    ParameterType -> Internal,
864    Indices       -> {Index[Generation], Index[Generation]},
865    Unitary       -> True,
866    Value         -> {
867      CKM[1,1] ->  Cos[cabi], CKM[1,2] -> Sin[cabi], CKM[1,3] -> 0,
868      CKM[2,1] -> -Sin[cabi], CKM[2,2] -> Cos[cabi], CKM[2,3] -> 0,
869      CKM[3,1] -> 0,          CKM[3,2] -> 0,         CKM[3,3] -> 1
870    },
871    TeX         -> Superscript[V,CKM],
872    Description -> "CKM-Matrix"}
873};
874
875
876(* ************************** *)
877(* *****   Lagrangian   ***** *)
878(* ************************** *)
879
880ckm = {Conjugate[CKM[i_, j_]] -> IndexDelta[i, j], CKM[i_, j_] -> IndexDelta[i, j]};
881
882ExpandFunc[a_, subs___] := (
883  ( ExpandIndices[a, FlavorExpand -> True] /. Flatten[List[subs]] ) // Expand
884  (* // ReplaceAll[#, Power[Lambda, i_Integer] :> 0 /; i < -2] &
885  // Series[#, {Lambda, Infinity , 2}] & // Normal *)
886)
887
888LGauge := Module[{mu,nu,ii,aa},
889
890Print["--- Expanding LGauge ---"];
891
892  Map[ExpandFunc, {
893  - 1/4 FS[B,mu,nu] FS[B,mu,nu],
894  - 1/4 FS[Wi,mu,nu,ii] FS[Wi,mu,nu,ii],
895  - 1/4 FS[G,mu,nu,aa] FS[G,mu,nu,aa]
896  }
897  ] // Total
898
899];
900
901
902LFermions := Module[{mu},
903
904Print["--- Expanding LFermions ---"];
905
906  Map[ExpandFunc[#, {}] &, {
907    I*QLbar.Ga[mu].DC[QL, mu],
908    I*LLbar.Ga[mu].DC[LL, mu],
909    I*uRbar.Ga[mu].DC[uR, mu],
910    I*dRbar.Ga[mu].DC[dR, mu],
911    I*lRbar.Ga[mu].DC[lR, mu]
912  }
913  ] // Total
914
915];
916
917
918LHiggs := Module[{ii,jj,mu,feynmangaugerules},
919
920Print["--- Expanding LHiggs ---"];
921
922  feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
923
924  Map[ExpandFunc[#, feynmangaugerules] &, {
925    DC[Phibar[ii],mu] DC[Phi[ii],mu] ,
926    muH^2 Phibar[ii] Phi[ii],
927    - lam Phibar[ii] Phi[ii] Phibar[jj] Phi[jj]
928  }
929  ] // Total
930
931];
932
933
934LYukawa := Module[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
935
936Print["--- Expanding LYukawa ---"];
937
938  feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
939
940  yuk = Map[ExpandFunc[#, feynmangaugerules] &, {
941    - yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc] dR[sp, ff3, cc] Phi[ii],
942    - yl[ff1, ff3] LLbar[sp, ii, ff1] lR[sp, ff3] Phi[ii],
943    - yu[ff1, ff2] QLbar[sp, ii, ff1, cc] uR[sp, ff2, cc] Phibar[jj] Eps[ii, jj]
944  }
945  ] // Total;
946
947  yuk+HC[yuk]
948
949];
950
951
952LGhost := Module[ {LGh1,LGhw,LGhs,LGhphi,mu,generators,gh,ghbar,
953                   Vectorize,phi1,phi2,togoldstones,doublet,doublet0,ii},
954
955Print["--- Expanding LGhost ---"];
956
957  (* Pure gauge piece *)
958  LGh1 = -ghBbar.del[DC[ghB,mu],mu];
959  LGhw = -ghWibar[ii].del[DC[ghWi[ii],mu],mu];
960  LGhs = -ghGbar[ii].del[DC[ghG[ii],mu],mu];
961
962  (* Scalar pieces: see Peskin pages 739-742 *)
963  (* phi1 and phi2 are the real degrees of freedom of GP *)
964  (* Vectorize transforms a doublet in a vector in the phi-basis, *)
965  (* i.e. the basis of real degrees of freedom *)
966  gh    = {ghB, ghWi[1], ghWi[2], ghWi[3]};
967  ghbar = {ghBbar, ghWibar[1], ghWibar[2], ghWibar[3]};
968
969  generators = { -I/2 g1 IdentityMatrix[2], -I/2 gw PauliSigma[1],
970                 -I/2 gw PauliSigma[2]    , -I/2 gw PauliSigma[3]};
971
972  doublet = Expand[{(-I phi1 - phi2)/Sqrt[2], Phi[2]} /. MR$Definitions /. vev -> 0];
973  doublet0 = {0, vev/Sqrt[2]};
974  Vectorize[{a_, b_}]:= Simplify[
975    {Sqrt[2] Re[Expand[a]], Sqrt[2] Im[Expand[a]],
976     Sqrt[2] Re[Expand[b]], Sqrt[2] Im[Expand[b]]
977    }/.{Im[_]->0, Re[num_]->num}
978  ];
979
980  togoldstones := {phi1 -> ( GP + GPbar )/Sqrt[2],
981                   phi2 -> (-GP + GPbar )/(I Sqrt[2])};
982
983  LGhphi = Plus@@Flatten[Table[
984  - ghbar[[kkk]].gh[[lll]] Vectorize[generators[[kkk]].doublet0]
985  . Vectorize[generators[[lll]].(doublet+doublet0)],
986  {kkk,4}, {lll,4}
987  ]]/.togoldstones;
988
989  ExpandIndices[
990    LGhs + If[FeynmanGauge, LGh1 + LGhw + LGhphi, 0]
991  , FlavorExpand->SU2W
992  ]
993
994]// Expand ;
995
996(* Full Lagrangian *)
997LSM := LGauge + LFermions + LHiggs + LYukawa + LGhost;
998
999Lkin := I/2 Chibar.Ga[mu].del[Chi, mu]\
1000        - 1/2 MChi Chibar.Chi\
1001        + I Psibar.Ga[mu].del[Psi,mu]\
1002        - MPsi Psibar.Psi;
1003
1004Lan := cw(CAn/Lambda^2) (1/2) Chibar.Ga[mu].Ga[5].Chi.del[FS[A, mu, nu],nu]
1005
1006Lban := (CBan/Lambda^2) (1/2) Chibar.Ga[mu].Ga[5].Chi.del[FS[B, mu, nu],nu]
1007
1008Lmag := cw(CMag/Lambda) (I/4) Psibar.Ga[mu].Ga[nu].Psi.FS[A, mu, nu] - cw(CMag/Lambda) (I/4) Psibar.Ga[nu].Ga[mu].Psi.FS[A, mu, nu]
1009
1010LBmag := (CBmag/Lambda) (I/4) Psibar.Ga[mu].Ga[nu].Psi.FS[B, mu, nu] - (CBmag/Lambda) (I/4) Psibar.Ga[nu].Ga[mu].Psi.FS[B, mu, nu]
1011
1012Lelec := cw I (CElec/Lambda) (I/4) Psibar.Ga[mu].Ga[nu].Ga[5].Psi.FS[A, mu, nu] - cw I (CElec/Lambda) (I/4) Psibar.Ga[nu].Ga[mu].Ga[5].Psi.FS[A, mu, nu]
1013
1014LBelec := I (CBelec/Lambda) (I/4) Psibar.Ga[mu].Ga[nu].Ga[5].Psi.FS[B, mu, nu] - I (CBelec/Lambda) (I/4) Psibar.Ga[nu].Ga[mu].Ga[5].Psi.FS[B, mu, nu]
1015
1016LCR := cw (Ccr/Lambda^2) Psibar.Ga[mu].Psi.del[FS[A, mu, nu], nu]
1017
1018LBcr := (CBcr/Lambda^2) Psibar.Ga[mu].Psi.del[FS[B, mu, nu], nu]
1019
1020LAndirac := cw(CDan/Lambda^2) Psibar.Ga[mu].Ga[5].Psi.del[FS[A, mu, nu],nu]
1021
1022LBandirac := (CBdan/Lambda^2) Psibar.Ga[mu].Ga[5].Psi.del[FS[B, mu, nu],nu]