DMGISM0: S2HDM.fr

File S2HDM.fr, 19.1 KB (added by GiorgioBusoni, 7 years ago)

FR model file

Line 
1(* **************************************************************************************** *)
2(* ***** ***** *)
3(* ***** FeynRules model file: Simplified s-channel DM models with Gauge Invariance ***** *)
4(* ***** Author: G.Busoni ***** *)
5(* ***** ***** *)
6(* **************************************************************************************** *)
7
8
9(* ************************** *)
10(* ***** Information ***** *)
11(* ************************** *)
12M$ModelName = "S2HDM";
13
14M$Information = {
15 Authors -> {"G.Busoni"},
16 Institutions -> {"The University of Melbourne"},
17 Emails -> {"giorgio.busoni@unimelb.edu.au"},
18 URLs -> "http://feynrules.irmp.ucl.ac.be/wiki/DMsimp/",
19 References -> {"N. Bell et al., 1612.03475, 1710.10764"},
20 Version -> "1.0",
21 Date -> "2017.10.31"
22};
23
24(* ************************** *)
25(* ***** Change log ***** *)
26(* ************************** *)
27
28(* 2017.10.31 v1.0 - Initial release *)
29
30(***** Setting for interaction order (as e.g. used by MadGraph 5) ******)
31(*
32M$InteractionOrderLimit = {
33 {DMS, 1}
34};
35
36M$InteractionOrderHierarchy = {
37 {QCD, 1}, {DMS, 2}, {QED, 3}
38};
39*)
40
41FR$LoopSwitches = {{Gf, MW}, {lambda12s, t2theta}};
42
43(* ************************** *)
44(* ***** vevs ***** *)
45(* ************************** *)
46M$vevs = { {phi1[2],vev*cbeta},{phi2[2],vev*sbeta} };
47
48M$ClassesDescription = {
49
50(* ************************** *)
51(* ***** Fields ***** *)
52(* ************************** *)
53
54F[7] == { ClassName -> Xd,
55 SelfConjugate -> False,
56 Mass -> {MXd, 300.},
57 Width -> 0,
58 ParticleName -> "~Xd",
59 AntiParticleName -> "~Xd~",
60 PDG -> 52,
61 PropagatorLabel -> "Xd",
62 PropagatorType -> Straight,
63 PropagatorArrow -> Forward,
64 TeX -> Subscript[X,d],
65 FullName -> "DM" },
66
67S[108] == { ClassName -> S1,
68 SelfConjugate -> True,
69 Mass -> {MS1, 200.},
70 Width -> {WS1,63.7546},
71 PDG -> 100001,
72 PropagatorLabel -> "S1",
73 PropagatorType -> D,
74 PropagatorArrow -> None,
75 TeX -> Subscript[S,1],
76 FullName -> "S1" },
77
78S[109] == { ClassName -> S2,
79 SelfConjugate -> True,
80 Mass -> {MS2, 800.},
81 Width -> {WS2,0.525971 },
82 PDG -> 100002,
83 PropagatorLabel -> "S2",
84 PropagatorType -> D,
85 PropagatorArrow -> None,
86 TeX -> Subscript[S,2],
87 FullName -> "S2" },
88
89S[1110] == { ClassName -> R,
90 SelfConjugate -> True,
91 Mass -> {MR, 400.},
92 Width -> {WR,65.4399},
93 PDG -> 100003,
94 PropagatorLabel -> "R",
95 PropagatorType -> D,
96 PropagatorArrow -> None,
97 TeX -> R,
98 FullName -> "R" },
99
100S[111] == {
101 ClassName -> HP,
102 SelfConjugate -> False,
103 QuantumNumbers -> {Q -> 1},
104 Mass -> {MHP, 400.},
105 Width -> {WHP,63.9267},
106 ParticleName -> "h+",
107 AntiParticleName -> "h-",
108 PDG -> 100004,
109 PropagatorLabel -> "H+",
110 PropagatorType -> D,
111 PropagatorArrow -> None,
112 TeX -> "H^+",
113 FullName -> "HP" },
114
115
116(* ************************************* *)
117(* ***** unphysical Fields ***** *)
118(* ************************************* *)
119
120S[101] == {
121 ClassName -> phi1,
122 Unphysical -> True,
123 SelfConjugate -> False,
124 ParticleName -> "phi1",
125 AntiParticleName -> "phi1bar",
126 Indices -> {Index[SU2D]},
127 FlavorIndex -> SU2D,
128 QuantumNumbers-> {Y -> 1/2},
129 Definitions -> { phi1[1] -> cbeta phih[1] - sbeta phiH[1], phi1[2] -> cbeta phih[2] - sbeta phiH[2] },
130 FullName -> "Phi1"
131 },
132
133S[102] == {
134 ClassName -> phi2,
135 Unphysical -> True,
136 SelfConjugate -> False,
137 ParticleName -> "phi2",
138 AntiParticleName -> "phi2bar",
139 Indices -> {Index[SU2D]},
140 FlavorIndex -> SU2D,
141 QuantumNumbers-> {Y -> 1/2},
142 Definitions -> { phi2[1] -> sbeta phih[1] + cbeta phiH[1], phi2[2] -> sbeta phih[2] + cbeta phiH[2] },
143 FullName -> "Phi2"
144},
145
146S[103] == {
147 ClassName -> phih,
148 Unphysical -> True,
149 SelfConjugate -> False,
150 ParticleName -> "phih",
151 AntiParticleName -> "phihbar",
152 Indices -> {Index[SU2D]},
153 FlavorIndex -> SU2D,
154 QuantumNumbers-> {Y -> 1/2},
155 Definitions -> { phih[1] -> GP, phih[2] -> (vev + H + I G0)/Sqrt[2] },
156 FullName -> "Phih"
157},
158
159S[104] == {
160 ClassName -> phiH,
161 Unphysical -> True,
162 SelfConjugate -> False,
163 ParticleName -> "phiH",
164 AntiParticleName -> "phiHbar",
165 Indices -> {Index[SU2D]},
166 FlavorIndex -> SU2D,
167 QuantumNumbers-> {Y -> 1/2},
168 Definitions -> { phiH[1] -> HP, phiH[2] -> (H0 + I R)/Sqrt[2] },
169 FullName -> "PhiH"
170},
171
172S[105] == {
173 ClassName -> SS,
174 Unphysical -> True,
175 SelfConjugate -> True,
176 Definitions -> { SS -> (vs + S0 ) },
177 FullName -> "SS"
178 },
179
180S[106] == {
181 ClassName -> H0,
182 Unphysical -> True,
183 SelfConjugate -> True,
184 ParticleName -> "h0",
185 Definitions -> { H0 -> ctheta S1 - stheta S2 },
186 FullName -> "H0"
187 },
188
189S[107] == {
190 ClassName -> S0,
191 Unphysical -> True,
192 SelfConjugate -> True,
193 ParticleName -> "s0",
194 Definitions -> { S0 -> stheta S1 + ctheta S2 },
195 FullName -> "S0"
196 }
197
198};
199
200(* ************************** *)
201(* ***** Parameters ***** *)
202(* ************************** *)
203M$Parameters = {
204
205(* *********************************** *)
206(* ***** External Parameters ***** *)
207(* *********************************** *)
208
209tbeta == {
210 BlockName -> Higgs,
211 OrderBlock -> 1,
212 ComplexParameter -> False,
213 ParameterType -> External,
214 Value -> 1,
215 Description -> "tan beta"
216},
217
218t2theta == {
219 BlockName -> Higgs,
220 OrderBlock -> 2,
221 ComplexParameter -> False,
222 ParameterType -> External,
223 Value -> -0.99,
224 Description -> "tan 2 theta"
225},
226
227lambdaHHs == {
228 BlockName -> Higgs,
229 OrderBlock -> 3,
230 ComplexParameter -> False,
231 ParameterType -> External,
232 Value -> 1,
233 InteractionOrder -> {QED,2},
234 Description -> "phi2^2 S^2 interaction"
235},
236
237vs == {
238 BlockName -> Higgs,
239 OrderBlock -> 4,
240 ComplexParameter -> False,
241 ParameterType -> External,
242 Value -> 4000,
243 InteractionOrder -> {QED,-1},
244 Description -> "vs"
245},
246
247yDM == {
248 BlockName -> Higgs,
249 OrderBlock -> 5,
250 ComplexParameter -> False,
251 ParameterType -> External,
252 Value -> 1,
253 InteractionOrder -> {DMS,1},
254 Description -> "DM yukawa coupling"
255},
256
257tgammau == {
258 BlockName -> YukawaNew,
259 OrderBlock -> 1,
260 ComplexParameter -> False,
261 ParameterType -> External,
262 Value -> 0.5,
263 InteractionOrder -> {DMS,1},
264 Description -> "New Higgs up quarks yukawa coupling"
265},
266
267tgammad == {
268 BlockName -> YukawaNew,
269 OrderBlock -> 2,
270 ComplexParameter -> False,
271 ParameterType -> External,
272 Value -> 1,
273 InteractionOrder -> {DMS,1},
274 Description -> "New Higgs down quarks yukawa coupling"
275},
276
277tgammal == {
278 BlockName -> YukawaNew,
279 OrderBlock -> 3,
280 ComplexParameter -> False,
281 ParameterType -> External,
282 Value -> 0,
283 InteractionOrder -> {DMS,1},
284 Description -> "New Higgs leptons yukawa coupling"
285},
286
287AA == {
288 BlockName -> YukawaNew,
289 OrderBlock -> 4,
290 ComplexParameter -> False,
291 ParameterType -> External,
292 Value -> 0.1,
293 InteractionOrder -> {DMS,1},
294 Description -> "New Higgs light up quarks yukawa coupling"
295},
296
297BB == {
298 BlockName -> YukawaNew,
299 OrderBlock -> 5,
300 ComplexParameter -> False,
301 ParameterType -> External,
302 Value -> 0.01,
303 InteractionOrder -> {DMS,1},
304 Description -> "New Higgs light down quarks yukawa coupling"
305},
306
307(* *********************************** *)
308(* ***** Internal Parameters ***** *)
309(* *********************************** *)
310
311cbeta == {
312 ComplexParameter -> False,
313 ParameterType -> Internal,
314 Value -> 1/Sqrt[1+tbeta^2],
315 Description -> "cos beta"
316},
317
318sbeta == {
319 ComplexParameter -> False,
320 ParameterType -> Internal,
321 Value -> tbeta*cbeta,
322 Description -> "sin beta"
323},
324
325c2theta == {
326 ComplexParameter -> False,
327 ParameterType -> Internal,
328 Value -> 1/Sqrt[1+t2theta^2],
329 Description -> "cos beta"
330},
331
332s2theta == {
333 ComplexParameter -> False,
334 ParameterType -> Internal,
335 Value -> t2theta*c2theta,
336 Description -> "sin beta"
337},
338
339ctheta == {
340 ComplexParameter -> False,
341 ParameterType -> Internal,
342 Value -> Cos[ArcSin[s2theta]/2],
343 Description -> "cos beta"
344},
345
346stheta == {
347 ComplexParameter -> False,
348 ParameterType -> Internal,
349 Value -> Sin[ArcSin[s2theta]/2],
350 Description -> "sin beta"
351},
352
353mm11 == {
354 ComplexParameter -> False,
355 ParameterType -> Internal,
356 Value -> 1/2 (-lambda1 vev^2-lambda11s vs^2), (*minima condition*)
357 Description -> "m11"
358},
359
360mmss == {
361 ComplexParameter -> False,
362 ParameterType -> Internal,
363 Value -> (- lambdas vs^2-lambda11s vev^2/2), (*mimima condition*)
364 Description -> "mss"
365},
366
367lambda11s == {
368 ComplexParameter -> False,
369 ParameterType -> Internal,
370 Value -> (stheta/ctheta)(2mm12+vs^2 lambda12s)/(2 vev vs), (*alignment condition*)
371 InteractionOrder -> {QED,2},
372 Description -> "phi1 phi1 S^2 interaction"
373},
374
375mm12 == {
376 ComplexParameter -> False,
377 ParameterType -> Internal,
378 Value -> 1/2 (- lambda12s vs^2), (*minima condition*)
379 Description -> "m12"
380},
381
382mm22 == {
383 ComplexParameter -> False,
384 ParameterType -> Internal,
385 Value -> 1/2 ((2 MHP^2 - lambda3 vev^2) - lambdaHHs vs^2), (*masses condition*)
386 Description -> "m22"
387},
388
389lambda5 == {
390 ComplexParameter -> False,
391 ParameterType -> Internal,
392 Value -> lambda4 - (2 (-MHP^2 + MR^2))/vev^2, (*masses condition*)
393 InteractionOrder -> {QED,2},
394 Description -> "lambda5"
395},
396
397lambda12s == {
398 ComplexParameter -> False,
399 ParameterType -> Internal,
400 Value -> (1/(2 vev vs))( t2theta ( + MR^2 + lambda5 vev^2 - 2 lambdas vs^2)), (*mixing angle definition*)
401 InteractionOrder -> {QED,2},
402 Description -> "phi1 phi2 S^2 interaction"
403},
404
405lambdas == {
406 ComplexParameter -> False,
407 ParameterType -> Internal,
408 Value -> (MS1^2+MS2^2+(MS2^2-MS1^2)c2theta)/4/vs^2, (*masses*)
409 InteractionOrder -> {QED,2},
410 Description -> "Singlet self interaction coupling"
411},
412
413lambda4 == {
414 ComplexParameter -> False,
415 ParameterType -> Internal,
416 Value -> (-4 MHP^2 + 2 MR^2 + MS1^2 + MS2^2 + c2theta (MS1^2 - MS2^2))/(2 vev^2), (*masses*)
417 InteractionOrder -> {QED,2},
418 Description -> "lambda4"
419},
420
421lambda1 == {
422 ComplexParameter -> False,
423 ParameterType -> Internal,
424 Value -> MH^2/(vev^2), (*masses condition*)
425 InteractionOrder -> {QED,2},
426 Description -> "First higgs self interaction term"
427},
428
429lambda2 == {
430 ComplexParameter -> False,
431 ParameterType -> Internal,
432 Value -> lambda1, (*CP2*)
433 InteractionOrder -> {QED,2},
434 Description -> "Second higgs self interaction term"
435},
436
437lambda3 == {
438 ComplexParameter -> False,
439 ParameterType -> Internal,
440 Value -> lambda1-lambda4-lambda5, (*CP2*)
441 InteractionOrder -> {QED,2},
442 Description -> "lambda3"
443},
444
445mm0 == {
446 ComplexParameter -> False,
447 ParameterType -> Internal,
448 Value -> MXd - yDM*vs,
449 Description -> "DM bare mass term"
450},
451 yuA == {
452 ParameterType -> Internal,
453 Indices -> {Index[Generation], Index[Generation]},
454 Definitions -> {yuA[i_?NumericQ, j_?NumericQ] :> 0 /; (i =!= j)},
455 Value -> {yuA[1,1] -> AA, yuA[2,2] -> AA, yuA[3,3] -> 0},
456 InteractionOrder -> {DMS, 1},
457 TeX -> Superscript[Y, u],
458 Description -> "Up-type Yukawa couplings new doublet"
459 },
460 ydB == {
461 ParameterType -> Internal,
462 Indices -> {Index[Generation], Index[Generation]},
463 Definitions -> {ydB[i_?NumericQ, j_?NumericQ] :> 0 /; (i =!= j)},
464 Value -> {ydB[1,1] -> BB, ydB[2,2] -> BB, ydB[3,3] -> 0},
465 InteractionOrder -> {DMS, 1},
466 TeX -> Superscript[Y, d],
467 Description -> "Down-type Yukawa couplings new doublet"
468 }
469
470};
471
472
473(* ************************** *)
474(* ***** Lagrangian ***** *)
475(* ************************** *)
476
477LHiggsKin := Block[{ii, mu, feynmangaugerules},
478feynmangaugerules = If[Not[FeynmanGauge], {G0 | GP | GPbar -> 0}, {}];
479ExpandIndices[
480DC[phi1bar[ii], mu] DC[phi1[ii], mu] +
481DC[phi2bar[ii], mu] DC[phi2[ii], mu],
482FlavorExpand -> {SU2D, SU2W}] /. feynmangaugerules];
483
484LHiggsKin2 := Block[{ii, mu, feynmangaugerules},
485feynmangaugerules = If[Not[FeynmanGauge], {G0 | GP | GPbar -> 0}, {}];
486ExpandIndices[
487DC[phihbar[ii], mu] DC[phih[ii], mu] +
488DC[phiHbar[ii], mu] DC[phiH[ii], mu],
489FlavorExpand -> {SU2D, SU2W}] /. feynmangaugerules];
490
491LSkin := Block[{mu}, DC[SS,mu] DC[SS,mu]]/2;
492
493VS := mmss SS^2/2 + lambdas SS^4/4;
494
495P1 = Block[{feynmangaugerules},
496 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
497 {phih[1], phih[2]}/.feynmangaugerules];
498P2 = Block[{feynmangaugerules},
499 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
500 {phiH[1], phiH[2]}/.feynmangaugerules];
501
502P1bar = HC[P1];
503P2bar = HC[P2];
504
505P11 = HC[P1].P1;
506P12 = HC[P1].P2;
507P21 = HC[P2].P1;
508P22 = HC[P2].P2;
509
510V2HDM := mm11 P11 + mm22 P22 + mm12 (P12 + P21) +
511lambda1 P11^2/2 + lambda2 P22^2/2 + lambda3 P11 P22 +
512lambda4 P12 P21 + lambda5 (P12^2 + P21^2)/2;
513
514
515VSH := lambda11s P11 SS^2/2 + lambdaHHs P22 SS^2/2 + lambda12s (P12 + P21) SS^2/2;
516
517LS := LSkin - VS - VSH;
518
519L2Higgs := LHiggsKin2 - V2HDM;
520
521LDM := Block[{mu}, I*(Xdbar.Ga[mu].DC[Xd, mu] )] - mm0 Xdbar.Xd - yDM SS Xdbar.Xd;
522
523LGhost2 := Block[{LGh1,LGhw,LGhs,LGhphi,mu, generators,gh,ghbar,Vectorize,phi3,phi4,togoldstones,doublet,doublet0},
524(* Pure gauge piece *)
525LGh1 = -ghBbar.del[DC[ghB,mu],mu];
526LGhw = -ghWibar.del[DC[ghWi,mu],mu];
527LGhs = -ghGbar.del[DC[ghG,mu],mu];
528
529(* Scalar pieces: see Peskin pages 739-742 *)
530(* phi1 and phi2 are the real degrees of freedom of GP *)
531(* Vectorize transforms a doublet in a vector in the phi-basis, i.e. the basis of real degrees of freedom *)
532gh = {ghB, ghWi[1], ghWi[2], ghWi[3]};
533ghbar = {ghBbar, ghWibar[1], ghWibar[2], ghWibar[3]};
534generators = {-I/2 g1 IdentityMatrix[2], -I/2 gw PauliSigma[1], -I/2 gw PauliSigma[2], -I/2 gw PauliSigma[3]};
535doublet = Expand[{(-I phi3 - phi4)/Sqrt[2], phih[2]} /. MR$Definitions /. vev -> 0];
536doublet0 = {0, vev/Sqrt[2]};
537Vectorize[{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}];
538togoldstones := {phi3 -> (GP + GPbar)/Sqrt[2], phi4 -> (-GP + GPbar)/(I Sqrt[2])};
539LGhphi=Plus@@Flatten[Table[-ghbar[[kkk]].gh[[lll]] Vectorize[generators[[kkk]].doublet0].Vectorize[generators[[lll]].(doublet+doublet0)],{kkk,4},{lll,4}]] /.togoldstones;
540
541ExpandIndices[ LGhs + If[FeynmanGauge, LGh1 + LGhw + LGhphi,0], FlavorExpand->SU2W]];
542
543LYukawaTypeI := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
544 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
545
546 yuk = ExpandIndices[
547 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phi2[ii]/sbeta -
548 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phi2[ii]/sbeta -
549 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phi2bar[jj] Eps[ii, jj]/sbeta, FlavorExpand -> SU2D];
550 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
551 yuk+HC[yuk]/.feynmangaugerules
552 ];
553
554LYukawaTypeII := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
555 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
556
557 yuk = ExpandIndices[
558 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phi1[ii]/cbeta -
559 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phi1[ii]/cbeta -
560 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phi2bar[jj] Eps[ii, jj]/sbeta, FlavorExpand -> SU2D];
561 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
562 yuk+HC[yuk]/.feynmangaugerules
563 ];
564
565LYukawaTypeX := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
566 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
567
568 yuk = ExpandIndices[
569 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phi2[ii]/sbeta -
570 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phi1[ii]/cbeta -
571 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phi2bar[jj] Eps[ii, jj]/sbeta, FlavorExpand -> SU2D];
572 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
573 yuk+HC[yuk]/.feynmangaugerules
574 ];
575
576LYukawaTypeY := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
577 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
578
579 yuk = ExpandIndices[
580 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phi1[ii]/cbeta -
581 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phi2[ii]/sbeta -
582 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phi2bar[jj] Eps[ii, jj]/sbeta, FlavorExpand -> SU2D];
583 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
584 yuk+HC[yuk]/.feynmangaugerules
585 ];
586
587LYukawaAlign := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
588 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
589
590 yuk = ExpandIndices[
591 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phih[ii] -
592 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phih[ii] -
593 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phihbar[jj] Eps[ii, jj]
594 -tgammad*yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phiH[ii] -
595 tgammal*yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phiH[ii] -
596 tgammau*yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phiHbar[jj] Eps[ii, jj], FlavorExpand -> SU2D];
597 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
598 yuk+HC[yuk]/.feynmangaugerules
599 ];
600
601LYukawa2gen := Block[{sp,ii,jj,cc,ff1,ff2,ff3,yuk,feynmangaugerules},
602 feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
603
604 yuk = ExpandIndices[
605 -yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phih[ii] -
606 yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] phih[ii] -
607 yu[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phihbar[jj] Eps[ii, jj]
608 -ydB[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, cc].dR [sp, ff3, cc] phiH[ii] -
609 yuA[ff1, ff2] QLbar[sp, ii, ff1, cc].uR [sp, ff2, cc] phiHbar[jj] Eps[ii, jj], FlavorExpand -> SU2D];
610 yuk = yuk /. { CKM[a_, b_] Conjugate[CKM[a_, c_]] -> IndexDelta[b, c], CKM[b_, a_] Conjugate[CKM[c_, a_]] -> IndexDelta[b, c]};
611 yuk+HC[yuk]/.feynmangaugerules
612 ];
613
614L2HDM:= L2Higgs + LS + LDM;
615
616LS2HDM:= LGauge + LFermions + L2HDM + LGhost2;
617
618LTypeI:= LS2HDM +LYukawaTypeI;
619LTypeII:= LS2HDM +LYukawaTypeII;
620LTypeX:= LS2HDM +LYukawaTypeX;
621LTypeY:= LS2HDM +LYukawaTypeY;
622LInert:= LS2HDM;
623LAlign:= LS2HDM +LYukawaAlign;
624L2gen:= LS2HDM +LYukawa2gen;