~maddevelopers/mg5amcnlo/FKS_EW_granny

« back to all changes in this revision

Viewing changes to models/mssm_v4/couplings.f

  • Committer: Marco Zaro
  • Date: 2018-04-16 14:08:47 UTC
  • mfrom: (78.403.58 2.6.2)
  • Revision ID: marco.zaro@gmail.com-20180416140847-nuz7haj3di3gqqhq
merged with 2.6.2 rev 332

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
      subroutine setpara(param_name,readlha)
2
 
c***********************************************************************
3
 
c This subroutine sets up the HELAS couplings of the STANDARD MODEL.
4
 
c***********************************************************************
5
 
      implicit none
6
 
 
7
 
c
8
 
c local
9
 
c
10
 
      character*(*) param_name
11
 
      logical readlha
12
 
      integer i
13
 
      real*8 dum
14
 
 
15
 
c
16
 
c calculated couplings
17
 
c
18
 
      include 'coupl.inc'
19
 
      include 'sm_read_values.inc'
20
 
      data yt,yb,yl/3*0d0/
21
 
      
22
 
c
23
 
c     local
24
 
c
25
 
      double precision  ee, ee2, ez, ey, sw, cw, sc2, sin2w, wm
26
 
c
27
 
c constants
28
 
c
29
 
      double complex  ci
30
 
      parameter( ci = ( 0.0d0, 1.0d0 ) )
31
 
      double precision  Zero, One, Two, Three, Four, Half, Rt2
32
 
      parameter( Zero = 0.0d0, One = 1.0d0, Two = 2.0d0 )
33
 
      parameter( Three = 3.0d0, Four = 4.0d0, Half = 0.5d0 )
34
 
      parameter( Rt2   = 1.414213562d0 )
35
 
      double precision  Pi, Fourpi
36
 
      parameter( Pi = 3.14159265358979323846d0 )
37
 
      parameter( Fourpi = Four * Pi )
38
 
 
39
 
c
40
 
c     susy initialization parameters
41
 
c
42
 
 
43
 
      real*8    unimass(20),lowmass(0:99),bw(4,4),uu(2,2),vv(2,2)
44
 
      real*8    m_t(2,2),m_b(2,2),m_l(2,2)
45
 
      real*8    width(0:99)
46
 
      save unimass,lowmass,bw,uu,vv,
47
 
     $     m_t,m_b,m_l,width
48
 
 
49
 
c
50
 
c Read in parameters from the SLHA-file
51
 
c      
52
 
      if(readlha) then 
53
 
         call READ_SLHA_RIP(unimass,lowmass,width,
54
 
     &        bw,uu,vv,m_t,m_b,m_l,param_name)
55
 
         G = DSQRT(Fourpi*ALFAS) ! use setting of the param_card.dat @ NLO
56
 
 
57
 
c
58
 
c------------------------------------------
59
 
c Start calculating the couplings for HELAS
60
 
c------------------------------------------
61
 
c
62
 
 
63
 
c     
64
 
c     Strong coupling
65
 
c
66
 
c     As a rule we first check if a pdf has been chosen in the    
67
 
c     run_card.dat (which has been already read at this stage).
68
 
c     If there pdfs in the initial state, then the alpha_s(MZ) used
69
 
c     is set to the corresponding value.  
70
 
  
71
 
   
72
 
c
73
 
c useful values
74
 
c
75
 
      wm = sqrt(zmass**2/Two+
76
 
     $     sqrt(zmass**4/Four-Pi/Rt2*alpha/gfermi*zmass**2))
77
 
      sin2w  = One-(wm/zmass)**2
78
 
      cw  = sqrt( One - sin2w )
79
 
      ee2 = alpha * Fourpi
80
 
      sw  = sqrt( sin2w )
81
 
      ee  = sqrt( ee2 )
82
 
      ez  = ee/(sw*cw)
83
 
      ey  = ee*(sw/cw)
84
 
      sc2 = sin2w*( One - sin2w )
85
 
 
86
 
c
87
 
c vector boson couplings
88
 
c
89
 
      gw   = ee/sw
90
 
      gwwa = ee
91
 
      gwwz = ee*cw/sw
92
 
 
93
 
c
94
 
c fermion-fermion-vector couplings
95
 
c
96
 
      gal(1) = dcmplx(  ee          , Zero )
97
 
      gal(2) = dcmplx(  ee          , Zero )
98
 
      gau(1) = dcmplx( -ee*Two/Three, Zero )
99
 
      gau(2) = dcmplx( -ee*Two/Three, Zero )
100
 
      gad(1) = dcmplx(  ee/Three    , Zero )
101
 
      gad(2) = dcmplx(  ee/Three    , Zero )
102
 
 
103
 
      gwf(1) = dcmplx( -ee/sqrt(Two*sin2w), Zero )
104
 
      gwf(2) = dcmplx(  Zero              , Zero )
105
 
 
106
 
      gzn(1) = dcmplx( -ez*Half                     , Zero )
107
 
      gzn(2) = dcmplx(  Zero                        , Zero )
108
 
      gzl(1) = dcmplx( -ez*(-Half + sin2w)          , Zero )
109
 
      gzl(2) = dcmplx( -ey                          , Zero )
110
 
      gzu(1) = dcmplx( -ez*( Half - sin2w*Two/Three), Zero )
111
 
      gzu(2) = dcmplx(  ey*Two/Three                , Zero )
112
 
      gzd(1) = dcmplx( -ez*(-Half + sin2w/Three)    , Zero )
113
 
      gzd(2) = dcmplx( -ey/Three                    , Zero )
114
 
 
115
 
c---------------------------------------------------------
116
 
c Set Photon Width to Zero, used by symmetry optimization
117
 
c---------------------------------------------------------
118
 
      awidth = 0d0
119
 
            
120
 
c----------------------------
121
 
c Set MSSM couplings
122
 
c----------------------------
123
 
 
124
 
      call INIT_SUSY(zmass,wmass,
125
 
     $     unimass,lowmass,width,
126
 
     $     bw,uu,vv,m_l,m_b,m_t,.false.,.true.)
127
 
      endif
128
 
c
129
 
c set up SUSY-QCD couplings
130
 
c
131
 
      GG(1) = -G
132
 
      GG(2) = -G     
133
 
      call INIT_SUSY_QCD(g)
134
 
 
135
 
      return
136
 
      end
137
 
 
138
 
      
139
 
c=======================================================================
140
 
c
141
 
c subroutine INIT_SUSY
142
 
c subroutine INIT_SUSY_QCD (needs INIT_SUSY for initialization)
143
 
c
144
 
c   Written by Tilman Plehn
145
 
c
146
 
c   all mixing matrices assumed to be real
147
 
c       -> negative mass eigenvalues
148
 
c
149
 
c   particles are always those with negative charge (e.g. charginos)
150
 
c
151
 
c   ordering for FFV and FFS: F_in, F_out, V/S
152
 
c   where this ordering is also reflected in the name of the coupling
153
 
c   same thing in Kaoru's writeup: F_out, F_in, S/V
154
 
c
155
 
c   arrays for fermion couplings: 1=L and 2=R
156
 
c
157
 
c=======================================================================
158
 
c
159
 
      subroutine INIT_SUSY(mzx,mwx,unimass,
160
 
     $     lowmass,lowwidth,bw,uu,vv,r_l,r_b,r_t,lmcom,lwid)
161
 
      implicit none
162
 
c
163
 
c input/output variables
164
 
c
165
 
      double precision  mzx, mwx, rmt, rmb, rml, alphaem, gf,
166
 
     &                  unimass(1:20), lowmass(0:99), lowwidth(0:99),
167
 
     &                  bw(4,4), uu(2,2), vv(2,2),
168
 
     &                  r_l(2,2), r_b(2,2), r_t(2,2)
169
 
      data rmt,rmb,rml/3*0d0/
170
 
      logical  lmcom, lwid
171
 
c
172
 
c global variables (couplings)
173
 
c
174
 
      include 'sm_read_values.inc'
175
 
      include 'coupl.inc'
176
 
 
177
 
      double precision  sw, sw2, cw, tw, s2w, c2w, e, gx, gz,
178
 
     &                  qe, qu, qd, t3e, t3v, t3u, t3d, rt2, pi,
179
 
     &                  r_lc(2,2), r_bc(2,2), r_tc(2,2)
180
 
      common /ewparam/  sw, sw2, cw, tw, s2w, c2w, e, gx, gz,
181
 
     &                  qe, qu, qd, t3e, t3v, t3u, t3d, rt2, pi,
182
 
     &                  r_lc, r_bc, r_tc
183
 
c
184
 
c local variables
185
 
c
186
 
      double complex  c_u(3), c_d(3), c_u_cc(3), c_d_cc(3),
187
 
     &                dum_hnn(3,4,4,2), dum_hxx(3,2,2,2),
188
 
     &                dum_hnx(4,2,2), dum_hxn(2,4,2),
189
 
     &                dum_znn(4,4,2), dum_wnx(4,2,2), dum_wxn(2,4,2)
190
 
 
191
 
      double complex  gbln1m(2), gbln1p(2), gbrn1m(2), gbrn1p(2),
192
 
     &                gbln2m(2), gbln2p(2), gbrn2m(2), gbrn2p(2),
193
 
     &                gbln3m(2), gbln3p(2), gbrn3m(2), gbrn3p(2),
194
 
     &                gbln4m(2), gbln4p(2), gbrn4m(2), gbrn4p(2),
195
 
     &                gtln1m(2), gtln1p(2), gtrn1m(2), gtrn1p(2),
196
 
     &                gtln2m(2), gtln2p(2), gtrn2m(2), gtrn2p(2),
197
 
     &                gtln3m(2), gtln3p(2), gtrn3m(2), gtrn3p(2),
198
 
     &                gtln4m(2), gtln4p(2), gtrn4m(2), gtrn4p(2),
199
 
     &                glln1m(2), glln1p(2), glrn1m(2), glrn1p(2),
200
 
     &                glln2m(2), glln2p(2), glrn2m(2), glrn2p(2),
201
 
     &                glln3m(2), glln3p(2), glrn3m(2), glrn3p(2),
202
 
     &                glln4m(2), glln4p(2), glrn4m(2), glrn4p(2)
203
 
 
204
 
      double complex  gblx1m(2), gblx1p(2), gbrx1m(2), gbrx1p(2),
205
 
     &                gblx2m(2), gblx2p(2), gbrx2m(2), gbrx2p(2),
206
 
     &                gtlx1m(2), gtlx1p(2), gtrx1m(2), gtrx1p(2),
207
 
     &                gtlx2m(2), gtlx2p(2), gtrx2m(2), gtrx2p(2),
208
 
     &                gllx1m(2), gllx1p(2), glrx1m(2), glrx1p(2),
209
 
     &                gllx2m(2), gllx2p(2), glrx2m(2), glrx2p(2)
210
 
 
211
 
      double complex  gh1blbl, gh1brbr, gh1blbr, gh1brbl,
212
 
     &                gh2blbl, gh2brbr, gh2blbr, gh2brbl,
213
 
     &                gh3blbl, gh3brbr, gh3blbr, gh3brbl,
214
 
     &                gh1tltl, gh1trtr, gh1tltr, gh1trtl,
215
 
     &                gh2tltl, gh2trtr, gh2tltr, gh2trtl,
216
 
     &                gh3tltl, gh3trtr, gh3tltr, gh3trtl,
217
 
     &                gh1llll, gh1lrlr, gh1lllr, gh1lrll,
218
 
     &                gh2llll, gh2lrlr, gh2lllr, gh2lrll,
219
 
     &                gh3llll, gh3lrlr, gh3lllr, gh3lrll,
220
 
     &                ghctlbl, ghctlbr,
221
 
     &                ghctrbr, ghctrbl,
222
 
     &                ghcvtll, ghcvtlr
223
 
 
224
 
      double precision  pz(4,4), det_l, det_b, det_t,
225
 
     &                  tgb, sa, ca, sb, cb, cbma, sbma,
226
 
     &                  saa, caa, sbb, cbb, sbpa, cbpa, ghhh,
227
 
     &                  mu, a_top, a_bot, a_tau
228
 
 
229
 
      double precision wm
230
 
 
231
 
      integer  i1, i2, ih, ii, io, in, ic
232
 
c
233
 
c fixed parameters
234
 
c
235
 
      double complex  i_unit
236
 
      parameter ( i_unit = (0d0,1d0) )
237
 
 
238
 
      double precision  zero, one, two, three, four, half
239
 
      parameter ( zero = 0d0, one = 1d0, two = 2d0, three = 3d0 )
240
 
      parameter ( four = 4d0, half = 0.5d0 )
241
 
 
242
 
      logical     ldebug
243
 
      parameter ( ldebug = .false. )
244
 
cc
245
 
      rt2 = sqrt(two)
246
 
      pi  = four * datan(one)
247
 
 
248
 
c
249
 
c copy mixing angles into common block for SUSY-QCD
250
 
c
251
 
      do i1=1,2
252
 
         do i2=1,2
253
 
            r_lc(i1,i2) = r_l(i1,i2)
254
 
            r_bc(i1,i2) = r_b(i1,i2)
255
 
            r_tc(i1,i2) = r_t(i1,i2)
256
 
         end do
257
 
      end do
258
 
 
259
 
c
260
 
c useful EW parameters
261
 
c
262
 
      alphaem = alpha
263
 
      gf  = gfermi
264
 
      wm = sqrt(zmass**2/Two+
265
 
     $     sqrt(zmass**4/Four-Pi/Rt2*alpha/gfermi*zmass**2))
266
 
      sw2  = One-(wm/zmass)**2
267
 
      sw  = sqrt(sw2)
268
 
      cw  = sqrt(one - sw2)
269
 
      tw  = sw/cw
270
 
      s2w = two*sw*cw
271
 
      c2w = cw**2 - sw**2
272
 
      e   = sqrt( four*pi*alphaem )
273
 
      gx   = e/sw
274
 
      gz  = gx/cw
275
 
 
276
 
      if ( ldebug ) write(6,*) ' INIT_SUSY: weak ',cw,tw,s2w,e,gx,gz
277
 
c
278
 
c compute the photino-zino mixing matrix
279
 
c
280
 
      do i1 = 1,4
281
 
         pz(i1,1) =   cw*bw(i1,1) + sw*bw(i1,2)
282
 
         pz(i1,2) = - sw*bw(i1,1) + cw*bw(i1,2)
283
 
         pz(i1,3) = bw(i1,3)
284
 
         pz(i1,4) = bw(i1,4)
285
 
      end do
286
 
 
287
 
c
288
 
c lepton charges
289
 
c
290
 
      qe  = -one
291
 
      t3e = -half
292
 
      t3v =  half
293
 
c
294
 
c quark charges
295
 
c
296
 
      qu  =  two/three
297
 
      t3u =  half
298
 
      qd  = -one/three
299
 
      t3d = -half
300
 
c
301
 
c set all non-SM masses (LH input)
302
 
c
303
 
      mgo = lowmass(4)
304
 
      mn1 = lowmass(5)
305
 
      mn2 = lowmass(6)
306
 
      mn3 = lowmass(7)
307
 
      mn4 = lowmass(8)
308
 
      mx1 = lowmass(9)
309
 
      mx2 = lowmass(10)
310
 
 
311
 
      if ( lmcom ) then
312
 
         mdl = lowmass(15)
313
 
         mdr = lowmass(15)
314
 
         mul = lowmass(15)
315
 
         mur = lowmass(15)
316
 
         msl = lowmass(15)
317
 
         msr = lowmass(15)
318
 
         mcl = lowmass(15)
319
 
         mcr = lowmass(15)
320
 
         if(ldebug) write(6,*) 'using 8-flavor average squark mass:',mdl
321
 
      else
322
 
         mdl = lowmass(11)
323
 
         mdr = lowmass(12)
324
 
         mul = lowmass(13)
325
 
         mur = lowmass(14)
326
 
         msl = lowmass(46)
327
 
         msr = lowmass(47)
328
 
         mcl = lowmass(48)
329
 
         mcr = lowmass(49)
330
 
      end if
331
 
 
332
 
      mb1 = lowmass(17)
333
 
      mb2 = lowmass(18)
334
 
      mt1 = lowmass(19)
335
 
      mt2 = lowmass(20)
336
 
 
337
 
      mel = lowmass(30)
338
 
      mer = lowmass(31)
339
 
      mve = lowmass(32)
340
 
      mml = lowmass(50)
341
 
      mmr = lowmass(51)
342
 
      mvm = lowmass(52)
343
 
      ml1 = lowmass(33)
344
 
      ml2 = lowmass(34)
345
 
      mvt = lowmass(35)
346
 
 
347
 
      mh1 = lowmass(41)
348
 
      mh2 = lowmass(42)
349
 
      mh3 = lowmass(40)
350
 
      mhc = lowmass(43)
351
 
c
352
 
c Higgs sector parameters
353
 
c
354
 
      tgb  = unimass(10)
355
 
      sa   = lowmass(44)
356
 
      ca   = lowmass(45)
357
 
      cb   = one/sqrt(one+tgb**2)
358
 
      sb   = tgb*cb
359
 
      cbma = cb*ca + sb*sa
360
 
      sbma = sb*ca - cb*sa
361
 
      cbpa = ca*cb - sa*sb
362
 
      sbpa = sa*cb + ca*sb
363
 
      caa  = two*ca**2 - one
364
 
      saa  = two*sa*ca
365
 
      cbb  = two*cb**2 - one
366
 
      sbb  = two*sb*cb
367
 
 
368
 
      c_d(1) = -sa
369
 
      c_d(2) =  ca
370
 
      c_d(3) =  sb * i_unit
371
 
      c_u(1) =  ca
372
 
      c_u(2) =  sa
373
 
      c_u(3) =  cb * i_unit
374
 
 
375
 
      c_u_cc(1) =   c_u(1)
376
 
      c_d_cc(1) =   c_d(1)
377
 
      c_u_cc(2) =   c_u(2)
378
 
      c_d_cc(2) =   c_d(2)
379
 
      c_u_cc(3) = - c_u(3)
380
 
      c_d_cc(3) = - c_d(3)
381
 
 
382
 
c -- Here the running mt,mb,ml masses are calculated from yt,yb, --- c
383
 
c -- yl given at the scale Q                                     --- c
384
 
      if(gw.ne.0)then
385
 
        rmt   = dsqrt(2d0)*wmass*sb*yt/gw
386
 
        rmb   = dsqrt(2d0)*wmass*cb*yb/gw
387
 
        rml   = dsqrt(2d0)*wmass*cb*yl/gw
388
 
      endif
389
 
c      write(*,*)'Yukawa couplings and running masses:'
390
 
c      write(*,*)'yt,yb,yl: ',yt,yb,yl
391
 
c      write(*,*)'rmt,rmb,rml: ',rmt,rmb,rml
392
 
 
393
 
      if(rmt.eq.0) rmt=tmass
394
 
      if(rmb.eq.0) rmb=bmass
395
 
      if(rml.eq.0) rml=lmass
396
 
 
397
 
c
398
 
c set all non-SM widths (SLHA input)
399
 
c
400
 
      if ( lwid ) then
401
 
 
402
 
c     for Majorana fermions, need right sign of width for HELAS
403
 
         wgo = sign(lowwidth( 4),mgo)
404
 
         wn1 = sign(lowwidth( 5),mn1)
405
 
         wn2 = sign(lowwidth( 6),mn2)
406
 
         wn3 = sign(lowwidth( 7),mn3)
407
 
         wn4 = sign(lowwidth( 8),mn4)
408
 
         wx1 = lowwidth( 9)
409
 
         wx2 = lowwidth(10)
410
 
 
411
 
         if ( lmcom ) then
412
 
            wdl = lowwidth(15)
413
 
            wdr = lowwidth(15)
414
 
            wul = lowwidth(15)
415
 
            wur = lowwidth(15)
416
 
            wsl = lowwidth(15)
417
 
            wsr = lowwidth(15)
418
 
            wcl = lowwidth(15)
419
 
            wcr = lowwidth(15)
420
 
            if(ldebug) write(6,*) 'using 8-flavor average squark width:',wdl
421
 
         else
422
 
            wdl = lowwidth(11)
423
 
            wdr = lowwidth(12)
424
 
            wul = lowwidth(13)
425
 
            wur = lowwidth(14)
426
 
            wsl = lowwidth(11)
427
 
            wsr = lowwidth(12)
428
 
            wcl = lowwidth(13)
429
 
            wcr = lowwidth(14)
430
 
         end if
431
 
 
432
 
         wb1 = lowwidth(17)
433
 
         wb2 = lowwidth(18)
434
 
         wt1 = lowwidth(19)
435
 
         wt2 = lowwidth(20)
436
 
 
437
 
         wel = lowwidth(30)
438
 
         wer = lowwidth(31)
439
 
         wve = lowwidth(32)
440
 
         wml = lowwidth(30)
441
 
         wmr = lowwidth(31)
442
 
         wvm = lowwidth(32)
443
 
         wl1 = lowwidth(33)
444
 
         wl2 = lowwidth(34)
445
 
         wvt = lowwidth(35)
446
 
 
447
 
c   Higgs widths not in the standard version - should overwrite w/ Hdecay
448
 
 
449
 
         wh1 = lowwidth(41)
450
 
         wh2 = lowwidth(42)
451
 
         wh3 = lowwidth(40)
452
 
         whc = lowwidth(43)
453
 
 
454
 
      else
455
 
 
456
 
         do ii = 0,99
457
 
            lowwidth(ii) = zero
458
 
         end do
459
 
 
460
 
      end if
461
 
c
462
 
c off diagonal scalar mass matrix entries in SLHA conventions
463
 
c
464
 
      det_l = r_l(1,1)*r_l(2,2)-r_l(1,2)*r_l(2,1)
465
 
      det_b = r_b(1,1)*r_b(2,2)-r_b(1,2)*r_b(2,1)
466
 
      det_t = r_t(1,1)*r_t(2,2)-r_t(1,2)*r_t(2,1)
467
 
 
468
 
      mu = lowmass(0)
469
 
 
470
 
c   this is the (-) sign between SLHA and my internal conventions
471
 
 
472
 
      a_tau = -lowmass(36)
473
 
      a_bot = -lowmass(21)
474
 
      a_top = -lowmass(24)
475
 
 
476
 
c     
477
 
c FFS Higgs couplings
478
 
c
479
 
 
480
 
      gh1tt(1) = - gx/two/mwx * rmt/sb * ca
481
 
      gh2tt(1) = - gx/two/mwx * rmt/sb * sa
482
 
      gh3tt(1) = - gx/two/mwx * rmt/sb * cb*i_unit
483
 
      gh1tt(2) =   gh1tt(1)
484
 
      gh2tt(2) =   gh2tt(1)
485
 
      gh3tt(2) = - gh3tt(1)
486
 
 
487
 
      gh1bb(1) = + gx/two/mwx * rmb/cb * sa
488
 
c      write(*,*) 'check:->',e,' ',sw,' ',gx,' ',+ gx/two/mwx,' ', rmb/cb,'  ',sa
489
 
      gh2bb(1) = - gx/two/mwx * rmb/cb * ca
490
 
      gh3bb(1) = - gx/two/mwx * rmb/cb * sb*i_unit
491
 
      gh1bb(2) =   gh1bb(1)
492
 
      gh2bb(2) =   gh2bb(1)
493
 
      gh3bb(2) = - gh3bb(1)
494
 
 
495
 
      gh1ll(1) = + gx/two/mwx * rml/cb * sa
496
 
      gh2ll(1) = - gx/two/mwx * rml/cb * ca
497
 
      gh3ll(1) = - gx/two/mwx * rml/cb * sb*i_unit
498
 
      gh1ll(2) =   gh1ll(1)
499
 
      gh2ll(2) =   gh2ll(1)
500
 
      gh3ll(2) = - gh3ll(1)
501
 
 
502
 
      ghmq(1)  = gx/rt2/mwx * rmt  /tgb
503
 
      ghmq(2)  = gx/rt2/mwx * rmb  *tgb
504
 
      ghml(1)  = zero
505
 
      ghml(2)  = gx/rt2/mwx * rml  *tgb
506
 
      ghpq(1)  = ghmq(2)
507
 
      ghpl(1)  = ghml(2)
508
 
      ghpq(2)  = ghmq(1)
509
 
      ghpl(2)  = ghml(1)
510
 
c
511
 
c VVS Higgs couplings
512
 
c
513
 
      gwwh1  = gx*mwx * sbma
514
 
      gwwh2  = gx*mwx * cbma
515
 
 
516
 
      gzzh1  = gx*mzx/cw * sbma
517
 
c      write(*,*) 'check:->',gx,' mzx ',mzx,' cw  ',cw,' sbma ',sbma
518
 
      gzzh2  = gx*mzx/cw * cbma
519
 
 
520
 
      gahchc = e
521
 
      gzhchc = e*c2w/s2w
522
 
 
523
 
      gwhch1 = - gx/two * ( c_d(1)*sb - c_u_cc(1)*cb )
524
 
      gwh1hc =   gwhch1
525
 
      gwhch2 = - gx/two * ( c_d(2)*sb - c_u_cc(2)*cb )
526
 
      gwh2hc =   gwhch2
527
 
      gwhch3 = - gx/two * ( c_d(3)*sb - c_u_cc(3)*cb )
528
 
      gwh3hc = - gwhch3
529
 
 
530
 
      gzh1h3 = - gz/two * cbma * i_unit ! experimentally det'd
531
 
      gzh2h3 =   gz/two * sbma * i_unit ! experimentally det'd
532
 
c
533
 
c SSS 3-Higgs couplings
534
 
c
535
 
      ghhh  = -three/two * mzx*gz ! to set up others only
536
 
 
537
 
      gh111 =  ghhh * caa * sbpa
538
 
      gh112 =  ghhh * two/three * ( saa*sbpa - caa*cbpa/two )
539
 
      gh122 = -ghhh * two/three * ( saa*cbpa + caa*sbpa/two )
540
 
      gh222 =  ghhh * caa * cbpa
541
 
      gh133 =  ghhh * cbb * sbpa / three
542
 
      gh233 = -ghhh * cbb * cbpa / three
543
 
 
544
 
      gh1cc =  ghhh/three * (two*cw**2*sbma + cbb*sbpa)
545
 
      gh2cc =  ghhh/three * (two*cw**2*cbma - cbb*cbpa)
546
 
c
547
 
c SSS Higgs-sfermion couplings
548
 
c n.b. sign of A_f as in SLHA (unlike lowmass array)
549
 
c
550
 
      gh1ulul = - gz*mzx*(t3u-qu*sw2) * ( c_d(1)*cb - c_u(1)*sb )
551
 
      gh1dldl = - gz*mzx*(t3d-qd*sw2) * ( c_d(1)*cb - c_u(1)*sb )
552
 
      gh1elel = - gz*mzx*(t3e-qe*sw2) * ( c_d(1)*cb - c_u(1)*sb )
553
 
      gh1veve = - gz*mzx*(t3v       ) * ( c_d(1)*cb - c_u(1)*sb )
554
 
      gh1urur =   gz*mzx*(   -qu*sw2) * ( c_d(1)*cb - c_u(1)*sb )
555
 
      gh1drdr =   gz*mzx*(   -qd*sw2) * ( c_d(1)*cb - c_u(1)*sb )
556
 
      gh1erer =   gz*mzx*(   -qe*sw2) * ( c_d(1)*cb - c_u(1)*sb )
557
 
 
558
 
      gh2ulul = - gz*mzx*(t3u-qu*sw2) * ( c_d(2)*cb - c_u(2)*sb )
559
 
      gh2dldl = - gz*mzx*(t3d-qd*sw2) * ( c_d(2)*cb - c_u(2)*sb )
560
 
      gh2elel = - gz*mzx*(t3e-qe*sw2) * ( c_d(2)*cb - c_u(2)*sb )
561
 
      gh2veve = - gz*mzx*(t3v       ) * ( c_d(2)*cb - c_u(2)*sb )
562
 
      gh2urur =   gz*mzx*(   -qu*sw2) * ( c_d(2)*cb - c_u(2)*sb )
563
 
      gh2drdr =   gz*mzx*(   -qd*sw2) * ( c_d(2)*cb - c_u(2)*sb )
564
 
      gh2erer =   gz*mzx*(   -qe*sw2) * ( c_d(2)*cb - c_u(2)*sb )
565
 
 
566
 
      gh1llll = gh1elel - gx*rml**2/mwx/cb * c_d(1)
567
 
      gh1lrlr = gh1erer - gx*rml**2/mwx/cb * c_d(1)
568
 
      gh1lllr =         - gx*rml/two/mwx/cb *(a_tau*c_d_cc(1) - mu*c_u(1))
569
 
      gh1lrll = conjg(gh1lllr)
570
 
 
571
 
      gh2llll = gh2elel - gx*rml**2/mwx/cb * c_d(2)
572
 
      gh2lrlr = gh2erer - gx*rml**2/mwx/cb * c_d(2)
573
 
      gh2lllr =         - gx*rml/two/mwx/cb *(a_tau*c_d_cc(2) - mu*c_u(2))
574
 
      gh2lrll = conjg(gh2lllr)
575
 
 
576
 
      gh3llll = zero
577
 
      gh3lrlr = zero
578
 
      gh3lllr =         - gx*rml/two/mwx/cb *(a_tau*c_d_cc(3) - mu*c_u(3))
579
 
      gh3lrll = conjg(gh3lllr)
580
 
 
581
 
      gh1blbl = gh1dldl - gx*rmb**2/mwx/cb * c_d(1)
582
 
      gh1brbr = gh1drdr - gx*rmb**2/mwx/cb * c_d(1)
583
 
      gh1blbr =         - gx*rmb/two/mwx/cb *(a_bot*c_d_cc(1) - mu*c_u(1))
584
 
      gh1brbl = conjg(gh1blbr)
585
 
 
586
 
      gh2blbl = gh2dldl - gx*rmb**2/mwx/cb * c_d(2)
587
 
      gh2brbr = gh2drdr - gx*rmb**2/mwx/cb * c_d(2)
588
 
      gh2blbr =         - gx*rmb/two/mwx/cb *(a_bot*c_d_cc(2) - mu*c_u(2))
589
 
      gh2brbl = conjg(gh2blbr)
590
 
 
591
 
      gh3blbl = zero
592
 
      gh3brbr = zero
593
 
      gh3blbr =         - gx*rmb/two/mwx/cb *(a_bot*c_d_cc(3) - mu*c_u(3))
594
 
      gh3brbl = conjg(gh3blbr)
595
 
 
596
 
      gh1tltl = gh1ulul - gx*rmt**2/mwx/sb * c_u(1)
597
 
      gh1trtr = gh1urur - gx*rmt**2/mwx/sb * c_u(1)
598
 
      gh1tltr =         - gx*rmt/two/mwx/sb *(a_top*c_u_cc(1) - mu*c_d(1))
599
 
      gh1trtl = conjg(gh1tltr)
600
 
 
601
 
      gh2tltl = gh2ulul - gx*rmt**2/mwx/sb * c_u(2)
602
 
      gh2trtr = gh2urur - gx*rmt**2/mwx/sb * c_u(2)
603
 
      gh2tltr =         - gx*rmt/two/mwx/sb *(a_top*c_u_cc(2) - mu*c_d(2))
604
 
      gh2trtl = conjg(gh2tltr)
605
 
 
606
 
      gh3tltl = zero
607
 
      gh3trtr = zero
608
 
      gh3tltr =         - gx*rmt/two/mwx/sb *(a_top*c_u_cc(3) - mu*c_d(3))
609
 
      gh3trtl = conjg(gh3tltr)
610
 
 
611
 
      gh1l1l1 =   r_l(1,1)**2       * gh1llll
612
 
     &          + r_l(1,2)**2       * gh1lrlr 
613
 
     &          + r_l(1,1)*r_l(1,2) * gh1lllr
614
 
     &          + r_l(1,1)*r_l(1,2) * gh1lrll
615
 
      gh1l2l2 =   r_l(2,1)**2       * gh1llll
616
 
     &          + r_l(2,2)**2       * gh1lrlr 
617
 
     &          + r_l(2,1)*r_l(2,2) * gh1lllr
618
 
     &          + r_l(2,1)*r_l(2,2) * gh1lrll
619
 
      gh1l1l2 =   r_l(1,1)*r_l(2,1) * gh1llll
620
 
     &          + r_l(1,2)*r_l(2,2) * gh1lrlr 
621
 
     &          + r_l(1,1)*r_l(2,2) * gh1lllr
622
 
     &          + r_l(1,2)*r_l(2,1) * gh1lrll
623
 
      gh1l2l1 = conjg(gh1l1l2)
624
 
 
625
 
      gh2l1l1 =   r_l(1,1)**2       * gh2llll
626
 
     &          + r_l(1,2)**2       * gh2lrlr 
627
 
     &          + r_l(1,1)*r_l(1,2) * gh2lllr
628
 
     &          + r_l(1,1)*r_l(1,2) * gh2lrll
629
 
      gh2l2l2 =   r_l(2,1)**2       * gh2llll
630
 
     &          + r_l(2,2)**2       * gh2lrlr 
631
 
     &          + r_l(2,1)*r_l(2,2) * gh2lllr
632
 
     &          + r_l(2,1)*r_l(2,2) * gh2lrll
633
 
      gh2l1l2 =   r_l(1,1)*r_l(2,1) * gh2llll
634
 
     &          + r_l(1,2)*r_l(2,2) * gh2lrlr 
635
 
     &          + r_l(1,1)*r_l(2,2) * gh2lllr
636
 
     &          + r_l(1,2)*r_l(2,1) * gh2lrll
637
 
      gh2l2l1 = conjg(gh2l1l2)
638
 
 
639
 
      gh3l1l1 =   r_l(1,1)**2       * gh3llll
640
 
     &          + r_l(1,2)**2       * gh3lrlr 
641
 
     &          + r_l(1,1)*r_l(1,2) * gh3lllr
642
 
     &          + r_l(1,1)*r_l(1,2) * gh3lrll
643
 
      gh3l2l2 =   r_l(2,1)**2       * gh3llll
644
 
     &          + r_l(2,2)**2       * gh3lrlr 
645
 
     &          + r_l(2,1)*r_l(2,2) * gh3lllr
646
 
     &          + r_l(2,1)*r_l(2,2) * gh3lrll
647
 
      gh3l1l2 =   r_l(1,1)*r_l(2,1) * gh3llll
648
 
     &          + r_l(1,2)*r_l(2,2) * gh3lrlr 
649
 
     &          + r_l(1,1)*r_l(2,2) * gh3lllr
650
 
     &          + r_l(1,2)*r_l(2,1) * gh3lrll
651
 
      gh3l2l1 = conjg(gh3l1l2)
652
 
 
653
 
      gh1b1b1 =   r_b(1,1)**2       * gh1blbl
654
 
     &          + r_b(1,2)**2       * gh1brbr 
655
 
     &          + r_b(1,1)*r_b(1,2) * gh1blbr
656
 
     &          + r_b(1,1)*r_b(1,2) * gh1brbl
657
 
      gh1b2b2 =   r_b(2,1)**2       * gh1blbl
658
 
     &          + r_b(2,2)**2       * gh1brbr 
659
 
     &          + r_b(2,1)*r_b(2,2) * gh1blbr
660
 
     &          + r_b(2,1)*r_b(2,2) * gh1brbl
661
 
      gh1b1b2 =   r_b(1,1)*r_b(2,1) * gh1blbl
662
 
     &          + r_b(1,2)*r_b(2,2) * gh1brbr 
663
 
     &          + r_b(1,1)*r_b(2,2) * gh1blbr
664
 
     &          + r_b(1,2)*r_b(2,1) * gh1brbl
665
 
      gh1b2b1 = conjg(gh1b1b2)
666
 
 
667
 
      gh2b1b1 =   r_b(1,1)**2       * gh2blbl
668
 
     &          + r_b(1,2)**2       * gh2brbr 
669
 
     &          + r_b(1,1)*r_b(1,2) * gh2blbr
670
 
     &          + r_b(1,1)*r_b(1,2) * gh2brbl
671
 
      gh2b2b2 =   r_b(2,1)**2       * gh2blbl
672
 
     &          + r_b(2,2)**2       * gh2brbr 
673
 
     &          + r_b(2,1)*r_b(2,2) * gh2blbr
674
 
     &          + r_b(2,1)*r_b(2,2) * gh2brbl
675
 
      gh2b1b2 =   r_b(1,1)*r_b(2,1) * gh2blbl
676
 
     &          + r_b(1,2)*r_b(2,2) * gh2brbr 
677
 
     &          + r_b(1,1)*r_b(2,2) * gh2blbr
678
 
     &          + r_b(1,2)*r_b(2,1) * gh2brbl
679
 
      gh2b2b1 = conjg(gh2b1b2) 
680
 
 
681
 
      gh3b1b1 =   r_b(1,1)**2       * gh3blbl
682
 
     &          + r_b(1,2)**2       * gh3brbr 
683
 
     &          + r_b(1,1)*r_b(1,2) * gh3blbr
684
 
     &          + r_b(1,1)*r_b(1,2) * gh3brbl
685
 
      gh3b2b2 =   r_b(2,1)**2       * gh3blbl
686
 
     &          + r_b(2,2)**2       * gh3brbr 
687
 
     &          + r_b(2,1)*r_b(2,2) * gh3blbr
688
 
     &          + r_b(2,1)*r_b(2,2) * gh3brbl
689
 
      gh3b1b2 =   r_b(1,1)*r_b(2,1) * gh3blbl
690
 
     &          + r_b(1,2)*r_b(2,2) * gh3brbr 
691
 
     &          + r_b(1,1)*r_b(2,2) * gh3blbr
692
 
     &          + r_b(1,2)*r_b(2,1) * gh3brbl
693
 
      gh3b2b1 = conjg(gh3b1b2)
694
 
 
695
 
      gh1t1t1 =   r_t(1,1)**2       * gh1tltl
696
 
     &          + r_t(1,2)**2       * gh1trtr 
697
 
     &          + r_t(1,1)*r_t(1,2) * gh1tltr
698
 
     &          + r_t(1,1)*r_t(1,2) * gh1trtl
699
 
      gh1t2t2 =   r_t(2,1)**2       * gh1tltl
700
 
     &          + r_t(2,2)**2       * gh1trtr 
701
 
     &          + r_t(2,1)*r_t(2,2) * gh1tltr
702
 
     &          + r_t(2,1)*r_t(2,2) * gh1trtl
703
 
      gh1t1t2 =   r_t(1,1)*r_t(2,1) * gh1tltl
704
 
     &          + r_t(1,2)*r_t(2,2) * gh1trtr 
705
 
     &          + r_t(1,1)*r_t(2,2) * gh1tltr
706
 
     &          + r_t(1,2)*r_t(2,1) * gh1trtl
707
 
      gh1t2t1 = conjg(gh1t1t2) 
708
 
 
709
 
      gh2t1t1 =   r_t(1,1)**2       * gh2tltl
710
 
     &          + r_t(1,2)**2       * gh2trtr 
711
 
     &          + r_t(1,1)*r_t(1,2) * gh2tltr
712
 
     &          + r_t(1,1)*r_t(1,2) * gh2trtl
713
 
      gh2t2t2 =   r_t(2,1)**2       * gh2tltl
714
 
     &          + r_t(2,2)**2       * gh2trtr 
715
 
     &          + r_t(2,1)*r_t(2,2) * gh2tltr
716
 
     &          + r_t(2,1)*r_t(2,2) * gh2trtl
717
 
      gh2t1t2 =   r_t(1,1)*r_t(2,1) * gh2tltl
718
 
     &          + r_t(1,2)*r_t(2,2) * gh2trtr 
719
 
     &          + r_t(1,1)*r_t(2,2) * gh2tltr
720
 
     &          + r_t(1,2)*r_t(2,1) * gh2trtl
721
 
      gh2t2t1 = conjg(gh2t1t2) 
722
 
 
723
 
      gh3t1t1 =   r_t(1,1)**2       * gh3tltl
724
 
     &          + r_t(1,2)**2       * gh3trtr 
725
 
     &          + r_t(1,1)*r_t(1,2) * gh3tltr
726
 
     &          + r_t(1,1)*r_t(1,2) * gh3trtl
727
 
      gh3t2t2 =   r_t(2,1)**2       * gh3tltl
728
 
     &          + r_t(2,2)**2       * gh3trtr 
729
 
     &          + r_t(2,1)*r_t(2,2) * gh3tltr
730
 
     &          + r_t(2,1)*r_t(2,2) * gh3trtl
731
 
      gh3t1t2 =   r_t(1,1)*r_t(2,1) * gh3tltl
732
 
     &          + r_t(1,2)*r_t(2,2) * gh3trtr 
733
 
     &          + r_t(1,1)*r_t(2,2) * gh3tltr
734
 
     &          + r_t(1,2)*r_t(2,1) * gh3trtl
735
 
      gh3t2t1 = conjg(gh3t1t2)
736
 
 
737
 
      if ( ldebug ) then
738
 
         write(6,*) ' INIT_SUSY: SSS Higgs couplings '
739
 
         write(6,*) '    ',gh1ulul,gh1dldl
740
 
         write(6,*) '    ',gh1elel,gh1veve
741
 
         write(6,*) '    ',gh1urur,gh1drdr
742
 
         write(6,*) '    ',gh1erer
743
 
         write(6,*) '    ',gh1llll,gh1lrlr
744
 
         write(6,*) '    ',gh1lllr,gh1lrll
745
 
         write(6,*) '    ',gh1blbl,gh1brbr
746
 
         write(6,*) '    ',gh1blbr,gh1brbl
747
 
         write(6,*) '    ',gh1tltl,gh1trtr
748
 
         write(6,*) '    ',gh1tltr,gh1trtl
749
 
         write(6,*) '    ',gh2ulul,gh2dldl
750
 
         write(6,*) '    ',gh2elel,gh2veve
751
 
         write(6,*) '    ',gh2urur,gh2drdr
752
 
         write(6,*) '    ',gh2erer
753
 
         write(6,*) '    ',gh2llll,gh2lrlr
754
 
         write(6,*) '    ',gh2lllr,gh2lrll
755
 
         write(6,*) '    ',gh2blbl,gh2brbr
756
 
         write(6,*) '    ',gh2blbr,gh2brbl
757
 
         write(6,*) '    ',gh2tltl,gh2trtr
758
 
         write(6,*) '    ',gh2tltr,gh2trtl
759
 
         write(6,*) '    ',gh3llll,gh3lrlr
760
 
         write(6,*) '    ',gh3lllr,gh3lrll
761
 
         write(6,*) '    ',gh3blbl,gh3brbr
762
 
         write(6,*) '    ',gh3blbr,gh3brbl
763
 
         write(6,*) '    ',gh3tltl,gh3trtr
764
 
         write(6,*) '    ',gh3tltr,gh3trtl
765
 
         write(6,*) ' INIT_SUSY: SSS Higgs couplings mixing '
766
 
         write(6,*) '    ',gh1l1l1,gh1l2l2
767
 
         write(6,*) '    ',gh1l1l2,gh1l2l1
768
 
         write(6,*) '    ',gh1b1b1,gh1b2b2
769
 
         write(6,*) '    ',gh1b1b2,gh1b2b1
770
 
         write(6,*) '    ',gh1t1t1,gh1t2t2
771
 
         write(6,*) '    ',gh1t1t2,gh1t2t1
772
 
         write(6,*) '    ',gh2l1l1,gh2l2l2
773
 
         write(6,*) '    ',gh2l1l2,gh2l2l1
774
 
         write(6,*) '    ',gh2b1b1,gh2b2b2
775
 
         write(6,*) '    ',gh2b1b2,gh2b2b1
776
 
         write(6,*) '    ',gh2t1t1,gh2t2t2
777
 
         write(6,*) '    ',gh2t1t2,gh2t2t1
778
 
         write(6,*) '    ',gh3l1l1,gh3l2l2
779
 
         write(6,*) '    ',gh3l1l2,gh3l2l1
780
 
         write(6,*) '    ',gh3b1b1,gh3b2b2
781
 
         write(6,*) '    ',gh3b1b2,gh3b2b1
782
 
         write(6,*) '    ',gh3t1t1,gh3t2t2
783
 
         write(6,*) '    ',gh3t1t2,gh3t2t1
784
 
      end if 
785
 
 
786
 
      ghculdl = - gx*mwx/rt2 * sbb
787
 
      ghcveel = - gx*mwx/rt2 * sbb
788
 
      ghcdlul =   ghculdl
789
 
      ghcelve =   ghcveel
790
 
 
791
 
      ghctlbl = ghculdl + gx/mwx/rt2 * (rmb**2*tgb + rmt**2/tgb)
792
 
      ghctrbr =           gx/mwx/rt2 * two*rmb*rmt/sbb
793
 
      ghctlbr =           gx/mwx/rt2 * rmb * ( a_bot*tgb + mu )
794
 
      ghctrbl =           gx/mwx/rt2 * rmt * ( a_top/tgb + mu )
795
 
 
796
 
      ghcvtll = ghcveel + gx/mwx/rt2 * rml**2 * tgb
797
 
      ghcvtlr =           gx/mwx/rt2 * rml * ( a_tau*tgb + mu )
798
 
 
799
 
      ghct1b1 =  r_t(1,1)*r_b(1,1) * ghctlbl 
800
 
     &         + r_t(1,1)*r_b(1,2) * ghctlbr
801
 
     &         + r_t(1,2)*r_b(1,1) * ghctrbl 
802
 
     &         + r_t(1,2)*r_b(1,2) * ghctrbr
803
 
      ghct2b1 =  r_t(2,1)*r_b(1,1) * ghctlbl 
804
 
     &         + r_t(2,1)*r_b(1,2) * ghctlbr
805
 
     &         + r_t(2,2)*r_b(1,1) * ghctrbl 
806
 
     &         + r_t(2,2)*r_b(1,2) * ghctrbr
807
 
      ghct1b2 =  r_t(1,1)*r_b(2,1) * ghctlbl 
808
 
     &         + r_t(1,1)*r_b(2,2) * ghctlbr
809
 
     &         + r_t(1,2)*r_b(2,1) * ghctrbl 
810
 
     &         + r_t(1,2)*r_b(2,2) * ghctrbr
811
 
      ghct2b2 =  r_t(2,1)*r_b(2,1) * ghctlbl 
812
 
     &         + r_t(2,1)*r_b(2,2) * ghctlbr
813
 
     &         + r_t(2,2)*r_b(2,1) * ghctrbl 
814
 
     &         + r_t(2,2)*r_b(2,2) * ghctrbr
815
 
      ghcb1t1 = conjg(ghct1b1)
816
 
      ghcb1t2 = conjg(ghct2b1)
817
 
      ghcb2t1 = conjg(ghct1b2)
818
 
      ghcb2t2 = conjg(ghct2b2)
819
 
 
820
 
      ghcvtl1 = r_l(1,1) * ghcvtll + r_l(1,2) * ghcvtlr
821
 
      ghcvtl2 = r_l(2,1) * ghcvtll + r_l(2,2) * ghcvtlr
822
 
      ghcl1vt = conjg(ghcvtl1)
823
 
      ghcl2vt = conjg(ghcvtl2)
824
 
 
825
 
      if ( ldebug ) then
826
 
         write(6,*) ' INIT_SUSY: SSS Higgs couplings charged '
827
 
         write(6,*) '    ',ghculdl,ghcveel
828
 
         write(6,*) '    ',ghctlbl,ghctrbr
829
 
         write(6,*) '    ',ghctlbr,ghctrbl
830
 
         write(6,*) '    ',ghct1b1,ghct2b2
831
 
         write(6,*) '    ',ghct1b2,ghct2b1
832
 
         write(6,*) '    ',ghcvtl1,ghcvtl2
833
 
      end if
834
 
c
835
 
c FFS Higgs couplings to weak inos (cm_out-cm_in-higgs)
836
 
c
837
 
c   NOTE: Xi- is the particle, Xi+ is the anti-particle
838
 
c
839
 
      do ih = 1,3,1             ! Higgs
840
 
 
841
 
         do ii = 1,2,1          ! incoming C-
842
 
            do io = 1,2,1       ! outgoing C-
843
 
 
844
 
               dum_hxx(ih,ii,io,1) = zero
845
 
               dum_hxx(ih,ii,io,2) = zero
846
 
 
847
 
               dum_hxx(ih,ii,io,1) =  c_d_cc(ih)*uu(ii,2)*vv(io,1)
848
 
     &                              + c_u_cc(ih)*uu(ii,1)*vv(io,2)
849
 
               dum_hxx(ih,ii,io,1) = -gx/rt2 * dum_hxx(ih,ii,io,1)
850
 
 
851
 
            end do
852
 
         end do
853
 
 
854
 
         do ii = 1,2,1          ! incoming C-
855
 
            do io = 1,2,1       ! outgoing C-
856
 
 
857
 
               if (ih.lt.3) then
858
 
                  dum_hxx(ih,ii,io,2) =  dum_hxx(ih,io,ii,1)
859
 
               else if (ih.eq.3) then
860
 
                  dum_hxx(ih,ii,io,2) = -dum_hxx(ih,io,ii,1)
861
 
               end if
862
 
 
863
 
            end do
864
 
         end do
865
 
 
866
 
      end do
867
 
 
868
 
      do i1 = 1,2               ! left and right
869
 
 
870
 
         gh1x11(i1) = dum_hxx(1,1,1,i1)
871
 
         gh1x12(i1) = dum_hxx(1,1,2,i1)
872
 
         gh1x21(i1) = dum_hxx(1,2,1,i1)
873
 
         gh1x22(i1) = dum_hxx(1,2,2,i1)
874
 
         
875
 
         gh2x11(i1) = dum_hxx(2,1,1,i1)
876
 
         gh2x12(i1) = dum_hxx(2,1,2,i1)
877
 
         gh2x21(i1) = dum_hxx(2,2,1,i1)
878
 
         gh2x22(i1) = dum_hxx(2,2,2,i1)
879
 
         
880
 
         gh3x11(i1) = dum_hxx(3,1,1,i1)
881
 
         gh3x12(i1) = dum_hxx(3,1,2,i1)
882
 
         gh3x21(i1) = dum_hxx(3,2,1,i1)
883
 
         gh3x22(i1) = dum_hxx(3,2,2,i1)
884
 
 
885
 
      end do
886
 
 
887
 
      do ih = 1,3,1             ! Higgs
888
 
 
889
 
         do ii = 1,4,1          ! incoming N
890
 
            do io = 1,4,1       ! outgoing N
891
 
 
892
 
               dum_hnn(ih,ii,io,1) = zero
893
 
               dum_hnn(ih,ii,io,2) = zero
894
 
 
895
 
               dum_hnn(ih,ii,io,1) =
896
 
     &              ( c_d_cc(ih)*bw(ii,3)-c_u_cc(ih)*bw(ii,4) )
897
 
     &              * ( bw(io,2)-tw*bw(io,1) )
898
 
     &            + ( c_d_cc(ih)*bw(io,3)-c_u_cc(ih)*bw(io,4) )
899
 
     &              * ( bw(ii,2)-tw*bw(ii,1) )
900
 
               dum_hnn(ih,ii,io,1) = -gx/two * dum_hnn(ih,ii,io,1)
901
 
 
902
 
            end do
903
 
         end do
904
 
 
905
 
         do ii = 1,4,1          ! incoming N
906
 
            do io = 1,4,1       ! outgoing N
907
 
 
908
 
               if (ih.lt.3) then
909
 
                  dum_hnn(ih,ii,io,2) =  dum_hnn(ih,io,ii,1)
910
 
               else if (ih.eq.3) then
911
 
                  dum_hnn(ih,ii,io,2) = -dum_hnn(ih,io,ii,1)
912
 
               end if
913
 
 
914
 
            end do
915
 
         end do
916
 
 
917
 
      end do
918
 
 
919
 
      do i1 = 1,2               ! left and right for scalar/pseudoscalar
920
 
 
921
 
         gh1n11(i1) = dum_hnn(1,1,1,i1)
922
 
         gh1n12(i1) = dum_hnn(1,1,2,i1)
923
 
         gh1n13(i1) = dum_hnn(1,1,3,i1)
924
 
         gh1n14(i1) = dum_hnn(1,1,4,i1)
925
 
         gh1n21(i1) = dum_hnn(1,2,1,i1)
926
 
         gh1n22(i1) = dum_hnn(1,2,2,i1)
927
 
         gh1n23(i1) = dum_hnn(1,2,3,i1)
928
 
         gh1n24(i1) = dum_hnn(1,2,4,i1)
929
 
         gh1n31(i1) = dum_hnn(1,3,1,i1)
930
 
         gh1n32(i1) = dum_hnn(1,3,2,i1)
931
 
         gh1n33(i1) = dum_hnn(1,3,3,i1)
932
 
         gh1n34(i1) = dum_hnn(1,3,4,i1)
933
 
         gh1n41(i1) = dum_hnn(1,4,1,i1)
934
 
         gh1n42(i1) = dum_hnn(1,4,2,i1)
935
 
         gh1n43(i1) = dum_hnn(1,4,3,i1)
936
 
         gh1n44(i1) = dum_hnn(1,4,4,i1)
937
 
 
938
 
         gh2n11(i1) = dum_hnn(2,1,1,i1)
939
 
         gh2n12(i1) = dum_hnn(2,1,2,i1)
940
 
         gh2n13(i1) = dum_hnn(2,1,3,i1)
941
 
         gh2n14(i1) = dum_hnn(2,1,4,i1)
942
 
         gh2n21(i1) = dum_hnn(2,2,1,i1)
943
 
         gh2n22(i1) = dum_hnn(2,2,2,i1)
944
 
         gh2n23(i1) = dum_hnn(2,2,3,i1)
945
 
         gh2n24(i1) = dum_hnn(2,2,4,i1)
946
 
         gh2n31(i1) = dum_hnn(2,3,1,i1)
947
 
         gh2n32(i1) = dum_hnn(2,3,2,i1)
948
 
         gh2n33(i1) = dum_hnn(2,3,3,i1)
949
 
         gh2n34(i1) = dum_hnn(2,3,4,i1)
950
 
         gh2n41(i1) = dum_hnn(2,4,1,i1)
951
 
         gh2n42(i1) = dum_hnn(2,4,2,i1)
952
 
         gh2n43(i1) = dum_hnn(2,4,3,i1)
953
 
         gh2n44(i1) = dum_hnn(2,4,4,i1)
954
 
 
955
 
         gh3n11(i1) = dum_hnn(3,1,1,i1)
956
 
         gh3n12(i1) = dum_hnn(3,1,2,i1)
957
 
         gh3n13(i1) = dum_hnn(3,1,3,i1)
958
 
         gh3n14(i1) = dum_hnn(3,1,4,i1)
959
 
         gh3n21(i1) = dum_hnn(3,2,1,i1)
960
 
         gh3n22(i1) = dum_hnn(3,2,2,i1)
961
 
         gh3n23(i1) = dum_hnn(3,2,3,i1)
962
 
         gh3n24(i1) = dum_hnn(3,2,4,i1)
963
 
         gh3n31(i1) = dum_hnn(3,3,1,i1)
964
 
         gh3n32(i1) = dum_hnn(3,3,2,i1)
965
 
         gh3n33(i1) = dum_hnn(3,3,3,i1)
966
 
         gh3n34(i1) = dum_hnn(3,3,4,i1)
967
 
         gh3n41(i1) = dum_hnn(3,4,1,i1)
968
 
         gh3n42(i1) = dum_hnn(3,4,2,i1)
969
 
         gh3n43(i1) = dum_hnn(3,4,3,i1)
970
 
         gh3n44(i1) = dum_hnn(3,4,4,i1)
971
 
 
972
 
      end do
973
 
 
974
 
      do in = 1,4,1             ! N
975
 
         do ic = 1,2,1          ! C-
976
 
 
977
 
            dum_hnx(in,ic,1) = zero
978
 
            dum_hnx(in,ic,2) = zero
979
 
 
980
 
            dum_hnx(in,ic,2) =
981
 
     &        bw(in,3)*uu(ic,1) - ( bw(in,2)+tw*bw(in,1) )*uu(ic,2)/rt2
982
 
            dum_hnx(in,ic,1) =
983
 
     &      - bw(in,4)*vv(ic,1) - ( bw(in,2)+tw*bw(in,1) )*vv(ic,2)/rt2
984
 
 
985
 
            dum_hnx(in,ic,2) = -gx*sb * dum_hnx(in,ic,2)
986
 
            dum_hnx(in,ic,1) =  gx*cb * dum_hnx(in,ic,1)
987
 
 
988
 
            dum_hxn(ic,in,1) = dum_hnx(in,ic,2)
989
 
            dum_hxn(ic,in,2) = dum_hnx(in,ic,1)
990
 
 
991
 
         end do
992
 
      end do
993
 
 
994
 
      do i1 = 1,2               ! left and right for scalar/pseudoscalar
995
 
 
996
 
         ghn1x1(i1) = dum_hnx(1,1,i1)
997
 
         ghn2x1(i1) = dum_hnx(2,1,i1)
998
 
         ghn3x1(i1) = dum_hnx(3,1,i1)
999
 
         ghn4x1(i1) = dum_hnx(4,1,i1)
1000
 
         ghn1x2(i1) = dum_hnx(1,2,i1)
1001
 
         ghn2x2(i1) = dum_hnx(2,2,i1)
1002
 
         ghn3x2(i1) = dum_hnx(3,2,i1)
1003
 
         ghn4x2(i1) = dum_hnx(4,2,i1)
1004
 
 
1005
 
         ghx1n1(i1) = dum_hxn(1,1,i1)
1006
 
         ghx1n2(i1) = dum_hxn(1,2,i1)
1007
 
         ghx1n3(i1) = dum_hxn(1,3,i1)
1008
 
         ghx1n4(i1) = dum_hxn(1,4,i1)
1009
 
         ghx2n1(i1) = dum_hxn(2,1,i1)
1010
 
         ghx2n2(i1) = dum_hxn(2,2,i1)
1011
 
         ghx2n3(i1) = dum_hxn(2,3,i1)
1012
 
         ghx2n4(i1) = dum_hxn(2,4,i1)
1013
 
 
1014
 
      end do
1015
 
 
1016
 
      if ( ldebug ) then
1017
 
         write(6,*) ' INIT_SUSY: FFS Higgs couplings '
1018
 
         write(6,*) '    ',gh1x11,gh1x12
1019
 
         write(6,*) '    ',gh1x21,gh1x22
1020
 
         write(6,*) '    ',gh2x11,gh2x12
1021
 
         write(6,*) '    ',gh2x21,gh2x22
1022
 
         write(6,*) '    ',gh3x11,gh3x12
1023
 
         write(6,*) '    ',gh3x21,gh3x22
1024
 
         write(6,*) '    ',gh1n11,gh1n12,gh1n13,gh1n14
1025
 
         write(6,*) '    ',gh1n21,gh1n22,gh1n23,gh1n24
1026
 
         write(6,*) '    ',gh1n31,gh1n32,gh1n33,gh1n34
1027
 
         write(6,*) '    ',gh1n41,gh1n42,gh1n43,gh1n44
1028
 
         write(6,*) '    ',gh2n11,gh2n12,gh2n13,gh2n14
1029
 
         write(6,*) '    ',gh2n21,gh2n22,gh2n23,gh2n24
1030
 
         write(6,*) '    ',gh2n31,gh2n32,gh2n33,gh2n34
1031
 
         write(6,*) '    ',gh2n41,gh2n42,gh2n43,gh2n44
1032
 
         write(6,*) '    ',gh3n11,gh3n12,gh3n13,gh3n14
1033
 
         write(6,*) '    ',gh3n21,gh3n22,gh3n23,gh3n24
1034
 
         write(6,*) '    ',gh3n31,gh3n32,gh3n33,gh3n34
1035
 
         write(6,*) '    ',gh3n41,gh3n42,gh3n43,gh3n44
1036
 
         write(6,*) '    ',ghn1x1,ghn2x1,ghn3x1,ghn4x1
1037
 
         write(6,*) '    ',ghn1x2,ghn2x2,ghn3x2,ghn4x2
1038
 
         write(6,*) '    ',ghx1n1,ghx1n2,ghx1n3,ghx1n4
1039
 
         write(6,*) '    ',ghx2n1,ghx2n2,ghx2n3,ghx2n4
1040
 
      end if
1041
 
c
1042
 
c VSS couplings - non-Higgs
1043
 
c
1044
 
      gaelel = - e * qe
1045
 
      gaulul = - e * qu
1046
 
      gadldl = - e * qd
1047
 
      if ( ldebug ) then
1048
 
         write(6,*) ' INIT_SUSY: VSS photon '
1049
 
         write(6,*) gaelel,gaulul,gadldl
1050
 
      end if
1051
 
 
1052
 
      gzelel = -gz * (t3e-qe*sw2)
1053
 
      gzerer = -gz * (   -qe*sw2)
1054
 
      gzsvsv = -gz * (t3v       )
1055
 
      gzl1l1 = r_l(1,1)**2      * gzelel + r_l(1,2)**2      * gzerer
1056
 
      gzl2l2 = r_l(2,1)**2      * gzelel + r_l(2,2)**2      * gzerer
1057
 
      gzl1l2 = r_l(2,1)*r_l(1,1)* gzelel + r_l(1,2)*r_l(2,2)* gzerer
1058
 
      gzl2l1 = gzl1l2
1059
 
 
1060
 
      gzdldl = -gz * (t3d-qd*sw2)
1061
 
      gzdrdr = -gz * (   -qd*sw2)
1062
 
      gzb1b1 = r_b(1,1)**2      * gzdldl + r_b(1,2)**2      * gzdrdr
1063
 
      gzb2b2 = r_b(2,1)**2      * gzdldl + r_b(2,2)**2      * gzdrdr
1064
 
      gzb1b2 = r_b(2,1)*r_b(1,1)* gzdldl + r_b(1,2)*r_b(2,2)* gzdrdr
1065
 
      gzb2b1 = gzb1b2
1066
 
 
1067
 
      gzulul = -gz * (t3u-qu*sw2)
1068
 
      gzurur = -gz * (   -qu*sw2)
1069
 
      gzt1t1 = r_t(1,1)**2      * gzulul + r_t(1,2)**2      * gzurur
1070
 
      gzt2t2 = r_t(2,1)**2      * gzulul + r_t(2,2)**2      * gzurur
1071
 
      gzt1t2 = r_t(2,1)*r_t(1,1)* gzulul + r_t(1,2)*r_t(2,2)* gzurur
1072
 
      gzt2t1 = gzt1t2
1073
 
 
1074
 
      if ( ldebug ) then
1075
 
         write(6,*) ' INIT_SUSY: VSS Z couplings '
1076
 
         write(6,*) '    ',gzelel,gzerer,gzsvsv
1077
 
         write(6,*) '    ',gzl1l1,gzl2l2
1078
 
         write(6,*) '    ',gzl1l2,gzl2l1
1079
 
         write(6,*) '    ',gzdldl,gzdrdr
1080
 
         write(6,*) '    ',gzb1b1,gzb2b2
1081
 
         write(6,*) '    ',gzb1b2,gzb2b1
1082
 
         write(6,*) '    ',gzulul,gzurur
1083
 
         write(6,*) '    ',gzt1t1,gzt2t2
1084
 
         write(6,*) '    ',gzt1t2,gzt2t1
1085
 
      end if
1086
 
 
1087
 
      gwelve = -gx/rt2
1088
 
      gwl1vt =  r_l(1,1) * gwelve
1089
 
      gwl2vt =  r_l(2,1) * gwelve
1090
 
 
1091
 
      gwqlql = -gx/rt2
1092
 
      gwb1t1 =  r_b(1,1)*r_t(1,1) * gwqlql
1093
 
      gwb1t2 =  r_b(1,1)*r_t(2,1) * gwqlql
1094
 
      gwb2t1 =  r_b(2,1)*r_t(1,1) * gwqlql
1095
 
      gwb2t2 =  r_b(2,1)*r_t(2,1) * gwqlql
1096
 
      gwt1b1 = gwb1t1
1097
 
      gwt1b2 = gwb2t1
1098
 
      gwt2b1 = gwb1t2
1099
 
      gwt2b2 = gwb2t2
1100
 
 
1101
 
      if ( ldebug ) then
1102
 
         write(6,*) ' INIT_SUSY: VSS W couplings '
1103
 
         write(6,*) '    ',gwelve
1104
 
         write(6,*) '    ',gwl1vt,gwl2vt
1105
 
         write(6,*) '    ',gwqlql
1106
 
         write(6,*) '    ',gwb1t1,gwb1t2
1107
 
         write(6,*) '    ',gwb2t1,gwb2t2
1108
 
      end if
1109
 
c
1110
 
c VVSS couplings - non-Higgs QED/QFD
1111
 
c
1112
 
      gaaelel = two * e**2 * qe**2
1113
 
      gaadldl = two * e**2 * qd**2
1114
 
      gaaulul = two * e**2 * qu**2
1115
 
 
1116
 
      if ( ldebug ) then
1117
 
         write(6,*) ' INIT_SUSY: VVSS non-Higgs couplings'
1118
 
         write(6,*) 'eL,eL',gaaelel
1119
 
         write(6,*) 'qL,qL',gaadldl,gaaulul
1120
 
      end if
1121
 
 
1122
 
      gazelel = two * e*qe * gz*(t3e-qe*sw2)
1123
 
      gazdldl = two * e*qd * gz*(t3d-qd*sw2)
1124
 
      gazulul = two * e*qu * gz*(t3u-qu*sw2)
1125
 
      gazerer = two * e*qe * gz*(   -qe*sw2)
1126
 
      gazdrdr = two * e*qd * gz*(   -qd*sw2)
1127
 
      gazurur = two * e*qu * gz*(   -qu*sw2)
1128
 
 
1129
 
      gazl1l1 = r_l(1,1)**2      * gazelel + r_l(1,2)**2      * gazerer
1130
 
      gazl2l2 = r_l(2,1)**2      * gazelel + r_l(2,2)**2      * gazerer
1131
 
      gazl1l2 = r_l(2,1)*r_l(1,1)* gazelel + r_l(1,2)*r_l(2,2)* gazerer
1132
 
      gazl2l1 = gazl1l2
1133
 
 
1134
 
      gazb1b1 = r_b(1,1)**2      * gazdldl + r_b(1,2)**2      * gazdrdr
1135
 
      gazb2b2 = r_b(2,1)**2      * gazdldl + r_b(2,2)**2      * gazdrdr
1136
 
      gazb1b2 = r_b(2,1)*r_b(1,1)* gazdldl + r_b(1,2)*r_b(2,2)* gazdrdr
1137
 
      gazb2b1 = gazb1b2
1138
 
 
1139
 
      gazt1t1 = r_t(1,1)**2      * gazulul + r_t(1,2)**2      * gazurur
1140
 
      gazt2t2 = r_t(2,1)**2      * gazulul + r_t(2,2)**2      * gazurur
1141
 
      gazt1t2 = r_t(2,1)*r_t(1,1)* gazulul + r_t(1,2)*r_t(2,2)* gazurur
1142
 
      gazt2t1 = gazt1t2
1143
 
 
1144
 
      if ( ldebug ) then
1145
 
         write(6,*) ' INIT_SUSY: photon-Z-s-s couplings'
1146
 
         write(6,*) 'fL,fL',gazdldl,gazulul,gazelel
1147
 
         write(6,*) 'fR,fR',gazdrdr,gazurur,gazerer
1148
 
         write(6,*) 'f1,f1',gazb1b1,gazt1t1,gazl1l1
1149
 
         write(6,*) 'f2,f2',gazb2b2,gazt2t2,gazl2l2
1150
 
         write(6,*) 'f1,f2',gazb1b2,gazt1t2,gazl1l2
1151
 
         write(6,*) 'f2,f1',gazb2b1,gazt2t1,gazl2l1
1152
 
      end if
1153
 
 
1154
 
      gzzveve = two * gz**2 *  t3v        **2
1155
 
      gzzelel = two * gz**2 * (t3e-qe*sw2)**2
1156
 
      gzzdldl = two * gz**2 * (t3d-qd*sw2)**2
1157
 
      gzzulul = two * gz**2 * (t3u-qu*sw2)**2
1158
 
      gzzerer = two * gz**2 * (   -qe*sw2)**2
1159
 
      gzzdrdr = two * gz**2 * (   -qd*sw2)**2
1160
 
      gzzurur = two * gz**2 * (   -qu*sw2)**2
1161
 
 
1162
 
      gzzl1l1 = r_l(1,1)**2      * gzzelel + r_l(1,2)**2      * gzzerer
1163
 
      gzzl2l2 = r_l(2,1)**2      * gzzelel + r_l(2,2)**2      * gzzerer
1164
 
      gzzl1l2 = r_l(2,1)*r_l(1,1)* gzzelel + r_l(1,2)*r_l(2,2)* gzzerer
1165
 
      gzzl2l1 = gzzl1l2
1166
 
 
1167
 
      gzzb1b1 = r_b(1,1)**2      * gzzdldl + r_b(1,2)**2      * gzzdrdr
1168
 
      gzzb2b2 = r_b(2,1)**2      * gzzdldl + r_b(2,2)**2      * gzzdrdr
1169
 
      gzzb1b2 = r_b(2,1)*r_b(1,1)* gzzdldl + r_b(1,2)*r_b(2,2)* gzzdrdr
1170
 
      gzzb2b1 = gzzb1b2
1171
 
 
1172
 
      gzzt1t1 = r_t(1,1)**2      * gzzulul + r_t(1,2)**2      * gzzurur
1173
 
      gzzt2t2 = r_t(2,1)**2      * gzzulul + r_t(2,2)**2      * gzzurur
1174
 
      gzzt1t2 = r_t(2,1)*r_t(1,1)* gzzulul + r_t(1,2)*r_t(2,2)* gzzurur
1175
 
      gzzt2t1 = gzzt1t2
1176
 
 
1177
 
      if ( ldebug ) then
1178
 
         write(6,*) ' INIT_SUSY: Z-Z-s-s couplings '
1179
 
         write(6,*) 'fL,fL',gzzdldl,gzzulul
1180
 
         write(6,*) 'fL,fL',gzzelel,gzzveve
1181
 
         write(6,*) 'fR,fR',gzzdrdr,gzzurur,gzzerer
1182
 
         write(6,*) 'f1,f1',gzzb1b1,gzzt1t1,gzzl1l1
1183
 
         write(6,*) 'f2,f2',gzzb2b2,gzzt2t2,gzzl2l2
1184
 
         write(6,*) 'f1,f2',gzzb1b2,gzzt1t2,gzzl1l2
1185
 
         write(6,*) 'f1,f1',gzzb2b1,gzzt2t1,gzzl2l1
1186
 
      end if
1187
 
 
1188
 
      gwwflfl =  gx**2/two
1189
 
 
1190
 
      gwwl1l1 = r_l(1,1)**2       * gwwflfl
1191
 
      gwwl2l2 = r_l(2,1)**2       * gwwflfl
1192
 
      gwwl1l2 = r_l(1,1)*r_l(2,1) * gwwflfl
1193
 
      gwwl2l1 = gwwl1l2
1194
 
 
1195
 
      gwwb1b1 = r_b(1,1)**2       * gwwflfl
1196
 
      gwwb2b2 = r_b(2,1)**2       * gwwflfl
1197
 
      gwwb1b2 = r_b(1,1)*r_b(2,1) * gwwflfl
1198
 
      gwwb2b1 = gwwb1b2
1199
 
 
1200
 
      gwwt1t1 = r_t(1,1)**2       * gwwflfl
1201
 
      gwwt2t2 = r_t(2,1)**2       * gwwflfl
1202
 
      gwwt1t2 = r_t(1,1)*r_t(2,1) * gwwflfl
1203
 
      gwwt2t1 = gwwt1t2
1204
 
 
1205
 
      if ( ldebug ) then
1206
 
         write(6,*) ' INIT_SUSY: W-W-s-s couplings '
1207
 
         write(6,*) 'fL,fL',gwwflfl
1208
 
         write(6,*) 'f1,f1',gwwb1b1,gwwt1t1,gwwl1l1
1209
 
         write(6,*) 'f2,f2',gwwb2b2,gwwt2t2,gwwl2l2
1210
 
         write(6,*) 'f1,f2',gwwb1b2,gwwt1t2,gwwl1l2
1211
 
         write(6,*) 'f2,f1',gwwb2b1,gwwt2t1,gwwl2l1
1212
 
      end if
1213
 
 
1214
 
      gwaveel =   e* qe     *gx     /rt2
1215
 
      gwaelve =   gwaveel
1216
 
 
1217
 
      gwauldl =   e*(qd+qu) *gx     /rt2
1218
 
      gwadlul =   gwauldl
1219
 
 
1220
 
      gwavtl1 = r_l(1,1) * gwaveel
1221
 
      gwavtl2 = r_l(2,1) * gwaveel
1222
 
      gwal1vt = gwavtl1
1223
 
      gwal2vt = gwavtl2
1224
 
      
1225
 
      gwab1t1 = r_b(1,1)*r_t(1,1) * gwadlul
1226
 
      gwab1t2 = r_b(1,1)*r_t(2,1) * gwadlul
1227
 
      gwab2t1 = r_b(2,1)*r_t(1,1) * gwadlul
1228
 
      gwab2t2 = r_b(2,1)*r_t(2,1) * gwadlul
1229
 
      gwat1b1 = gwab1t1
1230
 
      gwat2b1 = gwab1t2
1231
 
      gwat1b2 = gwab2t1
1232
 
      gwat2b2 = gwab2t2
1233
 
 
1234
 
      if ( ldebug ) then
1235
 
         write(6,*) ' INIT_SUSY: photon-W-s-s couplings '
1236
 
         write(6,*) 'fL   ',gwauldl,gwadlul
1237
 
         write(6,*) 'fL   ',gwaveel,gwaelve
1238
 
         write(6,*) 'f1,f1',gwab1t1,gwat1b1
1239
 
         write(6,*) 'f1,f1',gwavtl1,gwal1vt
1240
 
         write(6,*) 'f2,f2',gwab2t2,gwat2b2
1241
 
         write(6,*) 'f2,f2',gwavtl2,gwal2vt
1242
 
         write(6,*) 'f1,f2',gwab1t2,gwat1b2
1243
 
         write(6,*) 'f2,f1',gwab2t1,gwat2b1
1244
 
      end if
1245
 
 
1246
 
      gwzveel =  -e* qe     *gz*sw /rt2
1247
 
      gwzelve =   gwzveel
1248
 
 
1249
 
      gwzuldl =  -e*(qd+qu) *gz*sw /rt2
1250
 
      gwzdlul =   gwzuldl
1251
 
 
1252
 
      gwzvtl1 = r_l(1,1) * gwzveel
1253
 
      gwzvtl2 = r_l(2,1) * gwzveel
1254
 
      gwzl1vt = gwzvtl1
1255
 
      gwzl2vt = gwzvtl2
1256
 
 
1257
 
      gwzb1t1 = r_b(1,1)*r_t(1,1) * gwzdlul
1258
 
      gwzb1t2 = r_b(1,1)*r_t(2,1) * gwzdlul
1259
 
      gwzb2t1 = r_b(2,1)*r_t(1,1) * gwzdlul
1260
 
      gwzb2t2 = r_b(2,1)*r_t(2,1) * gwzdlul
1261
 
      gwzt1b1 = gwzb1t1
1262
 
      gwzt2b1 = gwzb1t2
1263
 
      gwzt1b2 = gwzb2t1
1264
 
      gwzt2b2 = gwzb2t2
1265
 
 
1266
 
      if ( ldebug ) then
1267
 
         write(6,*) ' INIT_SUSY: Z-W-s-s couplings '
1268
 
         write(6,*) 'fL   ',gwzuldl,gwzdlul
1269
 
         write(6,*) 'fL   ',gwzveel,gwzelve
1270
 
         write(6,*) 'f1,f1',gwzb1t1,gwzt1b1
1271
 
         write(6,*) 'f1,f1',gwzvtl1,gwzl1vt
1272
 
         write(6,*) 'f2,f2',gwzb2t2,gwzt2b2
1273
 
         write(6,*) 'f2,f2',gwzvtl2,gwzl2vt
1274
 
         write(6,*) 'f1,f2',gwzb1t2,gwzt1b2
1275
 
         write(6,*) 'f2,f1',gwzb2t1,gwzt2b1
1276
 
      end if
1277
 
c
1278
 
c VVSS couplings - Higgs
1279
 
c
1280
 
c   NOTE: HiHi coups receive factor 2 for identical particle combos
1281
 
c         ZZ,AA receive a factor 2 as well (so ZZHiHi gets factor 4)
1282
 
c         So these couplings differ by these factors relative to the
1283
 
c         Hagiwara/Cho MSSM note.
1284
 
c
1285
 
      gwwh1h1 = gx**2/two * ( c_u_cc(1)*c_u(1) + c_d_cc(1)*c_d(1) )
1286
 
      gwwh2h2 = gx**2/two * ( c_u_cc(2)*c_u(2) + c_d_cc(2)*c_d(2) )
1287
 
      gwwh3h3 = gx**2/two * ( c_u_cc(3)*c_u(3) + c_d_cc(3)*c_d(3) )
1288
 
 
1289
 
      if ( ldebug ) then
1290
 
         write(6,*)
1291
 
         write(6,*) ' INIT_SUSY: WWHH couplings '
1292
 
         write(6,*) '1,1',gwwh1h1
1293
 
         write(6,*) '2,2',gwwh2h2
1294
 
         write(6,*) '3,3',gwwh3h3
1295
 
      end if
1296
 
 
1297
 
      gzzh1h1 = gz**2/two * ( c_u_cc(1)*c_u(1) + c_d_cc(1)*c_d(1) )
1298
 
      gzzh2h2 = gz**2/two * ( c_u_cc(2)*c_u(2) + c_d_cc(2)*c_d(2) )
1299
 
      gzzh3h3 = gz**2/two * ( c_u_cc(3)*c_u(3) + c_d_cc(3)*c_d(3) )
1300
 
 
1301
 
      if ( ldebug ) then
1302
 
         write(6,*) ' INIT_SUSY: ZZHiHj couplings '
1303
 
         write(6,*) '1,1',gzzh1h1
1304
 
         write(6,*) '2,2',gzzh2h2
1305
 
         write(6,*) '3,3',gzzh3h3
1306
 
      end if
1307
 
 
1308
 
      gwwhchc = gx**2/two
1309
 
      gaahchc = two * e**2
1310
 
      gzzhchc = two * gz**2 * (one/two - sw2)**2
1311
 
      gazhchc = two * e*gz  * (one/two - sw2)
1312
 
 
1313
 
      if ( ldebug ) then
1314
 
         write(6,*) ' INIT_SUSY: VVH+H- couplings '
1315
 
         write(6,*) 'W+W-',gwwhchc
1316
 
         write(6,*) 'AA  ',gaahchc
1317
 
         write(6,*) 'AZ  ',gazhchc
1318
 
         write(6,*) 'ZZ  ',gzzhchc
1319
 
      end if
1320
 
 
1321
 
      gwah1hc = -e*gx*( c_d_cc(1)*sb - c_u(1)*cb )/two
1322
 
      gwah2hc = -e*gx*( c_d_cc(2)*sb - c_u(2)*cb )/two
1323
 
      gwah3hc = -e*gx*( c_d_cc(3)*sb - c_u(3)*cb )/two
1324
 
 
1325
 
      gwahch1 =  conjg(gwah1hc)
1326
 
      gwahch2 =  conjg(gwah2hc)
1327
 
      gwahch3 =  conjg(gwah3hc)
1328
 
 
1329
 
      gwzh1hc =  gz*gx*sw2*( c_d_cc(1)*sb - c_u(1)*cb )/two
1330
 
      gwzh2hc =  gz*gx*sw2*( c_d_cc(2)*sb - c_u(2)*cb )/two
1331
 
      gwzh3hc =  gz*gx*sw2*( c_d_cc(3)*sb - c_u(3)*cb )/two
1332
 
 
1333
 
      gwzhch1 =  conjg(gwzh1hc)
1334
 
      gwzhch2 =  conjg(gwzh2hc)
1335
 
      gwzhch3 =  conjg(gwzh3hc)
1336
 
 
1337
 
      if ( ldebug ) then
1338
 
         write(6,*) ' INIT_SUSY: WAHiHc couplings '
1339
 
         write(6,*) 'WAH1Hc',gwah1hc
1340
 
         write(6,*) 'WAHcH1',gwahch1
1341
 
         write(6,*) 'WAH2Hc',gwah2hc
1342
 
         write(6,*) 'WAHcH2',gwahch2
1343
 
         write(6,*) 'WAH3Hc',gwah3hc
1344
 
         write(6,*) 'WAHcH3',gwahch3
1345
 
         write(6,*) 'WZH1Hc',gwzh1hc
1346
 
         write(6,*) 'WZHcH1',gwzhch1
1347
 
         write(6,*) 'WZH2Hc',gwzh2hc
1348
 
         write(6,*) 'WZHcH2',gwzhch2
1349
 
         write(6,*) 'WZH3Hc',gwzh3hc
1350
 
         write(6,*) 'WZHcH3',gwzhch3
1351
 
      end if
1352
 
c
1353
 
c FFV couplings
1354
 
c
1355
 
      gzx11(1) = gz*( uu(1,1)*uu(1,1)+uu(1,2)*uu(1,2)/two - sw2 )
1356
 
      gzx11(2) = gz*( vv(1,1)*vv(1,1)+vv(1,2)*vv(1,2)/two - sw2 )
1357
 
      gzx12(1) = gz*( uu(1,1)*uu(2,1)+uu(1,2)*uu(2,2)/two       )
1358
 
      gzx12(2) = gz*( vv(1,1)*vv(2,1)+vv(1,2)*vv(2,2)/two       )
1359
 
      gzx22(1) = gz*( uu(2,1)*uu(2,1)+uu(2,2)*uu(2,2)/two - sw2 )
1360
 
      gzx22(2) = gz*( vv(2,1)*vv(2,1)+vv(2,2)*vv(2,2)/two - sw2 )
1361
 
 
1362
 
C      gzx21(1) = gzx12(1) ! handled by MG
1363
 
C      gzx21(2) = gzx12(2) ! handled by MG
1364
 
 
1365
 
      gax(1)   = e
1366
 
      gax(2)   = e
1367
 
 
1368
 
      do ii = 1,4,1             ! incoming N
1369
 
         do io = 1,4,1          ! outgoing N
1370
 
 
1371
 
            dum_znn(ii,io,1) = zero
1372
 
            dum_znn(ii,io,2) = zero
1373
 
 
1374
 
            dum_znn(ii,io,1) = pz(ii,3)*pz(io,3) - pz(ii,4)*pz(io,4)
1375
 
            dum_znn(ii,io,1) = -gz * dum_znn(ii,io,1)/two
1376
 
 
1377
 
            dum_znn(ii,io,2) = -dum_znn(ii,io,1)
1378
 
 
1379
 
         end do
1380
 
      end do
1381
 
 
1382
 
      do i1 = 1,2               ! left and right
1383
 
         gzn11(i1) = dum_znn(1,1,i1)
1384
 
         gzn12(i1) = dum_znn(1,2,i1)
1385
 
         gzn13(i1) = dum_znn(1,3,i1)
1386
 
         gzn14(i1) = dum_znn(1,4,i1)
1387
 
C         gzn21(i1) = dum_znn(2,1,i1) ! handled by MG
1388
 
         gzn22(i1) = dum_znn(2,2,i1)
1389
 
         gzn23(i1) = dum_znn(2,3,i1)
1390
 
         gzn24(i1) = dum_znn(2,4,i1)
1391
 
C         gzn31(i1) = dum_znn(3,1,i1) ! handled by MG
1392
 
C         gzn32(i1) = dum_znn(3,2,i1) ! handled by MG
1393
 
         gzn33(i1) = dum_znn(3,3,i1)
1394
 
         gzn34(i1) = dum_znn(3,4,i1)
1395
 
C         gzn41(i1) = dum_znn(4,1,i1) ! handled by MG
1396
 
C         gzn42(i1) = dum_znn(4,2,i1) ! handled by MG
1397
 
C         gzn43(i1) = dum_znn(4,3,i1) ! handled by MG
1398
 
         gzn44(i1) = dum_znn(4,4,i1)
1399
 
      end do
1400
 
 
1401
 
      if ( ldebug ) then
1402
 
         write(6,*) ' INIT_SUSY: FFV photon/Z couplings '
1403
 
         write(6,*) '    ',gax,gzx11,gzx12,gzx22
1404
 
         write(6,*) '    ',gzn11,gzn12,gzn13,gzn14
1405
 
         write(6,*) '    ',gzn22,gzn23,gzn24
1406
 
         write(6,*) '    ',gzn33,gzn34
1407
 
         write(6,*) '    ',gzn44
1408
 
      end if
1409
 
c
1410
 
c   assume conventions are in-out-V
1411
 
c
1412
 
      do in = 1,4,1             ! incoming N
1413
 
         do ic = 1,2,1          ! outgoing C-
1414
 
 
1415
 
            dum_wnx(in,ic,1) = zero
1416
 
            dum_wnx(in,ic,2) = zero
1417
 
 
1418
 
            dum_wnx(in,ic,1) = - bw(in,3)*uu(ic,2)-rt2*bw(in,2)*uu(ic,1)
1419
 
            dum_wnx(in,ic,2) =   bw(in,4)*vv(ic,2)-rt2*bw(in,2)*vv(ic,1)
1420
 
 
1421
 
            dum_wnx(in,ic,1) = gx/rt2 * dum_wnx(in,ic,1)
1422
 
            dum_wnx(in,ic,2) = gx/rt2 * dum_wnx(in,ic,2)
1423
 
 
1424
 
            dum_wxn(ic,in,1) = dum_wnx(in,ic,1)
1425
 
            dum_wxn(ic,in,2) = dum_wnx(in,ic,2)
1426
 
 
1427
 
         end do
1428
 
      end do
1429
 
 
1430
 
      do i1 = 1,2               ! left and right
1431
 
 
1432
 
         gwn1x1(i1) = dum_wnx(1,1,i1)
1433
 
         gwn2x1(i1) = dum_wnx(2,1,i1)
1434
 
         gwn3x1(i1) = dum_wnx(3,1,i1)
1435
 
         gwn4x1(i1) = dum_wnx(4,1,i1)
1436
 
         gwn1x2(i1) = dum_wnx(1,2,i1)
1437
 
         gwn2x2(i1) = dum_wnx(2,2,i1)
1438
 
         gwn3x2(i1) = dum_wnx(3,2,i1)
1439
 
         gwn4x2(i1) = dum_wnx(4,2,i1)
1440
 
 
1441
 
         gwx1n1(i1) = dum_wxn(1,1,i1)
1442
 
         gwx1n2(i1) = dum_wxn(1,2,i1)
1443
 
         gwx1n3(i1) = dum_wxn(1,3,i1)
1444
 
         gwx1n4(i1) = dum_wxn(1,4,i1)
1445
 
         gwx2n1(i1) = dum_wxn(2,1,i1)
1446
 
         gwx2n2(i1) = dum_wxn(2,2,i1)
1447
 
         gwx2n3(i1) = dum_wxn(2,3,i1)
1448
 
         gwx2n4(i1) = dum_wxn(2,4,i1)
1449
 
 
1450
 
      end do
1451
 
 
1452
 
      if ( ldebug ) then
1453
 
         write(6,*) ' INIT_SUSY: FFV W couplings '
1454
 
         write(6,*) '    ',gwn1x1,gwn1x2
1455
 
         write(6,*) '    ',gwn2x1,gwn2x2
1456
 
         write(6,*) '    ',gwn3x1,gwn3x2
1457
 
         write(6,*) '    ',gwn4x1,gwn4x2
1458
 
         write(6,*) '    ',gwx1n1,gwx2n1
1459
 
         write(6,*) '    ',gwx1n2,gwx2n2
1460
 
         write(6,*) '    ',gwx1n3,gwx2n3
1461
 
         write(6,*) '    ',gwx1n4,gwx2n4
1462
 
      end if
1463
 
c
1464
 
c FFS couplings - non-Higgs
1465
 
c
1466
 
C      geln1m(1) = rt2*( gx*sw*qe*pz(1,1) + gx*(t3e-qe*sw2)/cw*pz(1,2)) ! legacy code
1467
 
 
1468
 
      geln1m(1) = -rt2*gx*( t3e*bw(1,2)+bw(1,1)*(qe-t3e)*tw )
1469
 
      geln1m(2) = zero
1470
 
      gern1m(1) = zero
1471
 
      gern1m(2) =  rt2*gx*(             bw(1,1)*(qe    )*tw )
1472
 
 
1473
 
      geln2m(1) = -rt2*gx*( t3e*bw(2,2)+bw(2,1)*(qe-t3e)*tw )
1474
 
      geln2m(2) = zero
1475
 
      gern2m(1) = zero
1476
 
      gern2m(2) =  rt2*gx*(             bw(2,1)*(qe    )*tw )
1477
 
 
1478
 
      geln3m(1) = -rt2*gx*( t3e*bw(3,2)+bw(3,1)*(qe-t3e)*tw )
1479
 
      geln3m(2) = zero
1480
 
      gern3m(1) = zero
1481
 
      gern3m(2) =  rt2*gx*(             bw(3,1)*(qe    )*tw )
1482
 
 
1483
 
      geln4m(1) = -rt2*gx*( t3e*bw(4,2)+bw(4,1)*(qe-t3e)*tw )
1484
 
      geln4m(2) = zero
1485
 
      gern4m(1) = zero
1486
 
      gern4m(2) =  rt2*gx*(             bw(4,1)*(qe    )*tw )
1487
 
c
1488
 
c   use general symmetry for massless leptons
1489
 
c
1490
 
      geln1p(1) = geln1m(2)
1491
 
      geln1p(2) = geln1m(1)
1492
 
      gern1p(1) = gern1m(2)
1493
 
      gern1p(2) = gern1m(1)
1494
 
 
1495
 
      geln2p(1) = geln2m(2)
1496
 
      geln2p(2) = geln2m(1)
1497
 
      gern2p(1) = gern2m(2)
1498
 
      gern2p(2) = gern2m(1)
1499
 
 
1500
 
      geln3p(1) = geln3m(2)
1501
 
      geln3p(2) = geln3m(1)
1502
 
      gern3p(1) = gern3m(2)
1503
 
      gern3p(2) = gern3m(1)
1504
 
 
1505
 
      geln4p(1) = geln4m(2)
1506
 
      geln4p(2) = geln4m(1)
1507
 
      gern4p(1) = gern4m(2)
1508
 
      gern4p(2) = gern4m(1)
1509
 
 
1510
 
      glln1m(1) = -rt2*gx*( t3e*bw(1,2)+bw(1,1)*(qe-t3e)*tw )
1511
 
      glln1m(2) = -rt2*gx*  rml/(two*mwx*cb)*bw(1,3)
1512
 
      glrn1m(1) = -rt2*gx*  rml/(two*mwx*cb)*bw(1,3)
1513
 
      glrn1m(2) =  rt2*gx*(             bw(1,1)*(qe    )*tw )
1514
 
 
1515
 
      glln2m(1) = -rt2*gx*( t3e*bw(2,2)+bw(2,1)*(qe-t3e)*tw )
1516
 
      glln2m(2) = -rt2*gx*  rml/(two*mwx*cb)*bw(2,3)
1517
 
      glrn2m(1) = -rt2*gx*  rml/(two*mwx*cb)*bw(2,3)
1518
 
      glrn2m(2) =  rt2*gx*(             bw(2,1)*(qe    )*tw )
1519
 
 
1520
 
      glln3m(1) = -rt2*gx*( t3e*bw(3,2)+bw(3,1)*(qe-t3e)*tw )
1521
 
      glln3m(2) = -rt2*gx*  rml/(two*mwx*cb)*bw(3,3)
1522
 
      glrn3m(1) = -rt2*gx*  rml/(two*mwx*cb)*bw(3,3)
1523
 
      glrn3m(2) =  rt2*gx*(             bw(3,1)*(qe    )*tw )
1524
 
 
1525
 
      glln4m(1) = -rt2*gx*( t3e*bw(4,2)+bw(4,1)*(qe-t3e)*tw )
1526
 
      glln4m(2) = -rt2*gx*  rml/(two*mwx*cb)*bw(4,3)
1527
 
      glrn4m(1) = -rt2*gx*  rml/(two*mwx*cb)*bw(4,3)
1528
 
      glrn4m(2) =  rt2*gx*(             bw(4,1)*(qe    )*tw )
1529
 
 
1530
 
      gl1n1m(1) = r_l(1,1) * glln1m(1) + r_l(1,2) * glrn1m(1)
1531
 
      gl2n1m(1) = r_l(2,1) * glln1m(1) + r_l(2,2) * glrn1m(1)
1532
 
      gl1n1m(2) = r_l(1,1) * glln1m(2) + r_l(1,2) * glrn1m(2)
1533
 
      gl2n1m(2) = r_l(2,1) * glln1m(2) + r_l(2,2) * glrn1m(2)
1534
 
 
1535
 
      gl1n2m(1) = r_l(1,1) * glln2m(1) + r_l(1,2) * glrn2m(1)
1536
 
      gl2n2m(1) = r_l(2,1) * glln2m(1) + r_l(2,2) * glrn2m(1)
1537
 
      gl1n2m(2) = r_l(1,1) * glln2m(2) + r_l(1,2) * glrn2m(2)
1538
 
      gl2n2m(2) = r_l(2,1) * glln2m(2) + r_l(2,2) * glrn2m(2)
1539
 
 
1540
 
      gl1n3m(1) = r_l(1,1) * glln3m(1) + r_l(1,2) * glrn3m(1)
1541
 
      gl2n3m(1) = r_l(2,1) * glln3m(1) + r_l(2,2) * glrn3m(1)
1542
 
      gl1n3m(2) = r_l(1,1) * glln3m(2) + r_l(1,2) * glrn3m(2)
1543
 
      gl2n3m(2) = r_l(2,1) * glln3m(2) + r_l(2,2) * glrn3m(2)
1544
 
 
1545
 
      gl1n4m(1) = r_l(1,1) * glln4m(1) + r_l(1,2) * glrn4m(1)
1546
 
      gl2n4m(1) = r_l(2,1) * glln4m(1) + r_l(2,2) * glrn4m(1)
1547
 
      gl1n4m(2) = r_l(1,1) * glln4m(2) + r_l(1,2) * glrn4m(2)
1548
 
      gl2n4m(2) = r_l(2,1) * glln4m(2) + r_l(2,2) * glrn4m(2)
1549
 
 
1550
 
      glln1p(1) = glln1m(2)
1551
 
      glln1p(2) = glln1m(1)
1552
 
      glrn1p(1) = glrn1m(2)
1553
 
      glrn1p(2) = glrn1m(1)
1554
 
 
1555
 
      glln2p(1) = glln2m(2)
1556
 
      glln2p(2) = glln2m(1)
1557
 
      glrn2p(1) = glrn2m(2)
1558
 
      glrn2p(2) = glrn2m(1)
1559
 
 
1560
 
      glln3p(1) = glln3m(2)
1561
 
      glln3p(2) = glln3m(1)
1562
 
      glrn3p(1) = glrn3m(2)
1563
 
      glrn3p(2) = glrn3m(1)
1564
 
 
1565
 
      glln4p(1) = glln4m(2)
1566
 
      glln4p(2) = glln4m(1)
1567
 
      glrn4p(1) = glrn4m(2)
1568
 
      glrn4p(2) = glrn4m(1)
1569
 
 
1570
 
      gl1n1p(1) = gl1n1m(2)
1571
 
      gl1n1p(2) = gl1n1m(1)
1572
 
      gl2n1p(1) = gl2n1m(2)
1573
 
      gl2n1p(2) = gl2n1m(1)
1574
 
 
1575
 
      gl1n2p(1) = gl1n2m(2)
1576
 
      gl1n2p(2) = gl1n2m(1)
1577
 
      gl2n2p(1) = gl2n2m(2)
1578
 
      gl2n2p(2) = gl2n2m(1)
1579
 
 
1580
 
      gl1n3p(1) = gl1n3m(2)
1581
 
      gl1n3p(2) = gl1n3m(1)
1582
 
      gl2n3p(1) = gl2n3m(2)
1583
 
      gl2n3p(2) = gl2n3m(1)
1584
 
 
1585
 
      gl1n4p(1) = gl1n4m(2)
1586
 
      gl1n4p(2) = gl1n4m(1)
1587
 
      gl2n4p(1) = gl2n4m(2)
1588
 
      gl2n4p(2) = gl2n4m(1)
1589
 
 
1590
 
      gsvn1m(1) = -rt2*gx*( t3v*bw(1,2)+bw(1,1)*(  -t3v)*tw )
1591
 
      gsvn1m(2) = zero
1592
 
 
1593
 
      gsvn2m(1) = -rt2*gx*( t3v*bw(2,2)+bw(2,1)*(  -t3v)*tw )
1594
 
      gsvn2m(2) = zero
1595
 
 
1596
 
      gsvn3m(1) = -rt2*gx*( t3v*bw(3,2)+bw(3,1)*(  -t3v)*tw )
1597
 
      gsvn3m(2) = zero
1598
 
 
1599
 
      gsvn4m(1) = -rt2*gx*( t3v*bw(4,2)+bw(4,1)*(  -t3v)*tw )
1600
 
      gsvn4m(2) = zero
1601
 
 
1602
 
      gsvn1p(1) = gsvn1m(2)
1603
 
      gsvn1p(2) = gsvn1m(1)
1604
 
 
1605
 
      gsvn2p(1) = gsvn2m(2)
1606
 
      gsvn2p(2) = gsvn2m(1)
1607
 
 
1608
 
      gsvn3p(1) = gsvn3m(2)
1609
 
      gsvn3p(2) = gsvn3m(1)
1610
 
 
1611
 
      gsvn4p(1) = gsvn4m(2)
1612
 
      gsvn4p(2) = gsvn4m(1)
1613
 
 
1614
 
      if ( ldebug ) then
1615
 
         write(6,*) ' INIT_SUSY: FFS neutralino couplings 1'
1616
 
         write(6,*) '    ',geln1p,gern1p,gsvn1p
1617
 
         write(6,*) '    ',geln1m,gern1m,gsvn1m
1618
 
         write(6,*) '    ',geln2p,gern2p,gsvn2p
1619
 
         write(6,*) '    ',geln2m,gern2m,gsvn2m
1620
 
         write(6,*) '    ',geln3p,gern3p,gsvn3p
1621
 
         write(6,*) '    ',geln3m,gern3m,gsvn3m
1622
 
         write(6,*) '    ',geln4p,gern4p,gsvn4p
1623
 
         write(6,*) '    ',geln4m,gern4m,gsvn4m
1624
 
         write(6,*) '    ',glln1p,glrn1p
1625
 
         write(6,*) '    ',glln1m,glrn1m
1626
 
         write(6,*) '    ',glln2p,glrn2p
1627
 
         write(6,*) '    ',glln2m,glrn2m
1628
 
         write(6,*) '    ',glln3p,glrn3p
1629
 
         write(6,*) '    ',glln3m,glrn3m
1630
 
         write(6,*) '    ',glln4p,glrn4p
1631
 
         write(6,*) '    ',glln4m,glrn4m
1632
 
         write(6,*) ' INIT_SUSY: FFS neutralino couplings 1 mixing'
1633
 
         write(6,*) '    ',gl1n1p,gl2n1p
1634
 
         write(6,*) '    ',gl1n1m,gl2n1m
1635
 
         write(6,*) '    ',gl1n2p,gl2n2p
1636
 
         write(6,*) '    ',gl1n2m,gl2n2m
1637
 
         write(6,*) '    ',gl1n3p,gl2n3p
1638
 
         write(6,*) '    ',gl1n3m,gl2n3m
1639
 
         write(6,*) '    ',gl1n4p,gl2n4p
1640
 
         write(6,*) '    ',gl1n4m,gl2n4m
1641
 
      end if
1642
 
c
1643
 
c   the same for neutralino-quark-squark
1644
 
c      relative sign (-rt2) between thesis and kaoru
1645
 
c      note the additional (-) for gaugino part sqL->sqR
1646
 
c
1647
 
      gdln1m(1) = -rt2*gx*( t3d*bw(1,2)+bw(1,1)*(qd-t3d)*tw )
1648
 
      gdln1m(2) = zero
1649
 
      gdrn1m(1) = zero
1650
 
      gdrn1m(2) =  rt2*gx*(             bw(1,1)*(qd    )*tw )
1651
 
 
1652
 
      gdln2m(1) = -rt2*gx*( t3d*bw(2,2)+bw(2,1)*(qd-t3d)*tw )
1653
 
      gdln2m(2) = zero
1654
 
      gdrn2m(1) = zero
1655
 
      gdrn2m(2) =  rt2*gx*(             bw(2,1)*(qd    )*tw )
1656
 
 
1657
 
      gdln3m(1) = -rt2*gx*( t3d*bw(3,2)+bw(3,1)*(qd-t3d)*tw )
1658
 
      gdln3m(2) = zero
1659
 
      gdrn3m(1) = zero
1660
 
      gdrn3m(2) =  rt2*gx*(             bw(3,1)*(qd    )*tw )
1661
 
 
1662
 
      gdln4m(1) = -rt2*gx*( t3d*bw(4,2)+bw(4,1)*(qd-t3d)*tw )
1663
 
      gdln4m(2) = zero
1664
 
      gdrn4m(1) = zero
1665
 
      gdrn4m(2) =  rt2*gx*(             bw(4,1)*(qd    )*tw )
1666
 
 
1667
 
      gdln1p(1) = gdln1m(2)
1668
 
      gdln1p(2) = gdln1m(1)
1669
 
      gdrn1p(1) = gdrn1m(2)
1670
 
      gdrn1p(2) = gdrn1m(1)
1671
 
 
1672
 
      gdln2p(1) = gdln2m(2)
1673
 
      gdln2p(2) = gdln2m(1)
1674
 
      gdrn2p(1) = gdrn2m(2)
1675
 
      gdrn2p(2) = gdrn2m(1)
1676
 
 
1677
 
      gdln3p(1) = gdln3m(2)
1678
 
      gdln3p(2) = gdln3m(1)
1679
 
      gdrn3p(1) = gdrn3m(2)
1680
 
      gdrn3p(2) = gdrn3m(1)
1681
 
 
1682
 
      gdln4p(1) = gdln4m(2)
1683
 
      gdln4p(2) = gdln4m(1)
1684
 
      gdrn4p(1) = gdrn4m(2)
1685
 
      gdrn4p(2) = gdrn4m(1)
1686
 
 
1687
 
      gbln1m(1) = -rt2*gx*( t3d*bw(1,2)+bw(1,1)*(qd-t3d)*tw )
1688
 
      gbln1m(2) = -rt2*gx*  rmb/(two*mwx*cb)*bw(1,3)
1689
 
      gbrn1m(1) = -rt2*gx*  rmb/(two*mwx*cb)*bw(1,3)
1690
 
      gbrn1m(2) =  rt2*gx*(             bw(1,1)*(qd    )*tw )
1691
 
 
1692
 
      gbln2m(1) = -rt2*gx*( t3d*bw(2,2)+bw(2,1)*(qd-t3d)*tw )
1693
 
      gbln2m(2) = -rt2*gx*  rmb/(two*mwx*cb)*bw(2,3)
1694
 
      gbrn2m(1) = -rt2*gx*  rmb/(two*mwx*cb)*bw(2,3)
1695
 
      gbrn2m(2) =  rt2*gx*(             bw(2,1)*(qd    )*tw )
1696
 
 
1697
 
      gbln3m(1) = -rt2*gx*( t3d*bw(3,2)+bw(3,1)*(qd-t3d)*tw )
1698
 
      gbln3m(2) = -rt2*gx*  rmb/(two*mwx*cb)*bw(3,3)
1699
 
      gbrn3m(1) = -rt2*gx*  rmb/(two*mwx*cb)*bw(3,3)
1700
 
      gbrn3m(2) =  rt2*gx*(             bw(3,1)*(qd    )*tw )
1701
 
 
1702
 
      gbln4m(1) = -rt2*gx*( t3d*bw(4,2)+bw(4,1)*(qd-t3d)*tw )
1703
 
      gbln4m(2) = -rt2*gx*  rmb/(two*mwx*cb)*bw(4,3)
1704
 
      gbrn4m(1) = -rt2*gx*  rmb/(two*mwx*cb)*bw(4,3)
1705
 
      gbrn4m(2) =  rt2*gx*(             bw(4,1)*(qd    )*tw )
1706
 
 
1707
 
      gb1n1m(1) = r_b(1,1) * gbln1m(1) + r_b(1,2) * gbrn1m(1)
1708
 
      gb2n1m(1) = r_b(2,1) * gbln1m(1) + r_b(2,2) * gbrn1m(1)
1709
 
      gb1n1m(2) = r_b(1,1) * gbln1m(2) + r_b(1,2) * gbrn1m(2)
1710
 
      gb2n1m(2) = r_b(2,1) * gbln1m(2) + r_b(2,2) * gbrn1m(2)
1711
 
 
1712
 
      gb1n2m(1) = r_b(1,1) * gbln2m(1) + r_b(1,2) * gbrn2m(1)
1713
 
      gb2n2m(1) = r_b(2,1) * gbln2m(1) + r_b(2,2) * gbrn2m(1)
1714
 
      gb1n2m(2) = r_b(1,1) * gbln2m(2) + r_b(1,2) * gbrn2m(2)
1715
 
      gb2n2m(2) = r_b(2,1) * gbln2m(2) + r_b(2,2) * gbrn2m(2)
1716
 
 
1717
 
      gb1n3m(1) = r_b(1,1) * gbln3m(1) + r_b(1,2) * gbrn3m(1)
1718
 
      gb2n3m(1) = r_b(2,1) * gbln3m(1) + r_b(2,2) * gbrn3m(1)
1719
 
      gb1n3m(2) = r_b(1,1) * gbln3m(2) + r_b(1,2) * gbrn3m(2)
1720
 
      gb2n3m(2) = r_b(2,1) * gbln3m(2) + r_b(2,2) * gbrn3m(2)
1721
 
 
1722
 
      gb1n4m(1) = r_b(1,1) * gbln4m(1) + r_b(1,2) * gbrn4m(1)
1723
 
      gb2n4m(1) = r_b(2,1) * gbln4m(1) + r_b(2,2) * gbrn4m(1)
1724
 
      gb1n4m(2) = r_b(1,1) * gbln4m(2) + r_b(1,2) * gbrn4m(2)
1725
 
      gb2n4m(2) = r_b(2,1) * gbln4m(2) + r_b(2,2) * gbrn4m(2)
1726
 
 
1727
 
      gbln1p(1) = gbln1m(2)
1728
 
      gbln1p(2) = gbln1m(1)
1729
 
      gbrn1p(1) = gbrn1m(2)
1730
 
      gbrn1p(2) = gbrn1m(1)
1731
 
 
1732
 
      gbln2p(1) = gbln2m(2)
1733
 
      gbln2p(2) = gbln2m(1)
1734
 
      gbrn2p(1) = gbrn2m(2)
1735
 
      gbrn2p(2) = gbrn2m(1)
1736
 
 
1737
 
      gbln3p(1) = gbln3m(2)
1738
 
      gbln3p(2) = gbln3m(1)
1739
 
      gbrn3p(1) = gbrn3m(2)
1740
 
      gbrn3p(2) = gbrn3m(1)
1741
 
 
1742
 
      gbln4p(1) = gbln4m(2)
1743
 
      gbln4p(2) = gbln4m(1)
1744
 
      gbrn4p(1) = gbrn4m(2)
1745
 
      gbrn4p(2) = gbrn4m(1)
1746
 
 
1747
 
      gb1n1p(1) = gb1n1m(2)
1748
 
      gb1n1p(2) = gb1n1m(1)
1749
 
      gb2n1p(1) = gb2n1m(2)
1750
 
      gb2n1p(2) = gb2n1m(1)
1751
 
 
1752
 
      gb1n2p(1) = gb1n2m(2)
1753
 
      gb1n2p(2) = gb1n2m(1)
1754
 
      gb2n2p(1) = gb2n2m(2)
1755
 
      gb2n2p(2) = gb2n2m(1)
1756
 
 
1757
 
      gb1n3p(1) = gb1n3m(2)
1758
 
      gb1n3p(2) = gb1n3m(1)
1759
 
      gb2n3p(1) = gb2n3m(2)
1760
 
      gb2n3p(2) = gb2n3m(1)
1761
 
 
1762
 
      gb1n4p(1) = gb1n4m(2)
1763
 
      gb1n4p(2) = gb1n4m(1)
1764
 
      gb2n4p(1) = gb2n4m(2)
1765
 
      gb2n4p(2) = gb2n4m(1)
1766
 
 
1767
 
      guln1m(1) = -rt2*gx*( t3u*bw(1,2)+bw(1,1)*(qu-t3u)*tw )
1768
 
      guln1m(2) = zero
1769
 
      gurn1m(1) = zero
1770
 
      gurn1m(2) =  rt2*gx*(             bw(1,1)*(qu    )*tw )
1771
 
 
1772
 
      guln2m(1) = -rt2*gx*( t3u*bw(2,2)+bw(2,1)*(qu-t3u)*tw )
1773
 
      guln2m(2) = zero
1774
 
      gurn2m(1) = zero
1775
 
      gurn2m(2) =  rt2*gx*(             bw(2,1)*(qu    )*tw )
1776
 
 
1777
 
      guln3m(1) = -rt2*gx*( t3u*bw(3,2)+bw(3,1)*(qu-t3u)*tw )
1778
 
      guln3m(2) = zero
1779
 
      gurn3m(1) = zero
1780
 
      gurn3m(2) =  rt2*gx*(             bw(3,1)*(qu    )*tw )
1781
 
 
1782
 
      guln4m(1) = -rt2*gx*( t3u*bw(4,2)+bw(4,1)*(qu-t3u)*tw )
1783
 
      guln4m(2) = zero
1784
 
      gurn4m(1) = zero
1785
 
      gurn4m(2) =  rt2*gx*(             bw(4,1)*(qu    )*tw )
1786
 
 
1787
 
      guln1p(1) = guln1m(2)
1788
 
      guln1p(2) = guln1m(1)
1789
 
      gurn1p(1) = gurn1m(2)
1790
 
      gurn1p(2) = gurn1m(1)
1791
 
 
1792
 
      guln2p(1) = guln2m(2)
1793
 
      guln2p(2) = guln2m(1)
1794
 
      gurn2p(1) = gurn2m(2)
1795
 
      gurn2p(2) = gurn2m(1)
1796
 
 
1797
 
      guln3p(1) = guln3m(2)
1798
 
      guln3p(2) = guln3m(1)
1799
 
      gurn3p(1) = gurn3m(2)
1800
 
      gurn3p(2) = gurn3m(1)
1801
 
 
1802
 
      guln4p(1) = guln4m(2)
1803
 
      guln4p(2) = guln4m(1)
1804
 
      gurn4p(1) = gurn4m(2)
1805
 
      gurn4p(2) = gurn4m(1)
1806
 
 
1807
 
      gtln1m(1) = -rt2*gx*( t3u*bw(1,2)+bw(1,1)*(qu-t3u)*tw )
1808
 
      gtln1m(2) = -rt2*gx*  rmt/(two*mwx*sb)*bw(1,4)
1809
 
      gtrn1m(1) = -rt2*gx*  rmt/(two*mwx*sb)*bw(1,4)
1810
 
      gtrn1m(2) =  rt2*gx*(             bw(1,1)*(qu    )*tw )
1811
 
 
1812
 
      gtln2m(1) = -rt2*gx*( t3u*bw(2,2)+bw(2,1)*(qu-t3u)*tw )
1813
 
      gtln2m(2) = -rt2*gx*  rmt/(two*mwx*sb)*bw(2,4)
1814
 
      gtrn2m(1) = -rt2*gx*  rmt/(two*mwx*sb)*bw(2,4)
1815
 
      gtrn2m(2) =  rt2*gx*(             bw(2,1)*(qu    )*tw )
1816
 
 
1817
 
      gtln3m(1) = -rt2*gx*( t3u*bw(3,2)+bw(3,1)*(qu-t3u)*tw )
1818
 
      gtln3m(2) = -rt2*gx*  rmt/(two*mwx*sb)*bw(3,4)
1819
 
      gtrn3m(1) = -rt2*gx*  rmt/(two*mwx*sb)*bw(3,4)
1820
 
      gtrn3m(2) =  rt2*gx*(             bw(3,1)*(qu    )*tw )
1821
 
 
1822
 
      gtln4m(1) = -rt2*gx*( t3u*bw(4,2)+bw(4,1)*(qu-t3u)*tw )
1823
 
      gtln4m(2) = -rt2*gx*  rmt/(two*mwx*sb)*bw(4,4)
1824
 
      gtrn4m(1) = -rt2*gx*  rmt/(two*mwx*sb)*bw(4,4)
1825
 
      gtrn4m(2) =  rt2*gx*(             bw(4,1)*(qu    )*tw )
1826
 
 
1827
 
      gt1n1m(1) = r_t(1,1) * gtln1m(1) + r_t(1,2) * gtrn1m(1)
1828
 
      gt2n1m(1) = r_t(2,1) * gtln1m(1) + r_t(2,2) * gtrn1m(1)
1829
 
      gt1n1m(2) = r_t(1,1) * gtln1m(2) + r_t(1,2) * gtrn1m(2)
1830
 
      gt2n1m(2) = r_t(2,1) * gtln1m(2) + r_t(2,2) * gtrn1m(2)
1831
 
 
1832
 
      gt1n2m(1) = r_t(1,1) * gtln2m(1) + r_t(1,2) * gtrn2m(1)
1833
 
      gt2n2m(1) = r_t(2,1) * gtln2m(1) + r_t(2,2) * gtrn2m(1)
1834
 
      gt1n2m(2) = r_t(1,1) * gtln2m(2) + r_t(1,2) * gtrn2m(2)
1835
 
      gt2n2m(2) = r_t(2,1) * gtln2m(2) + r_t(2,2) * gtrn2m(2)
1836
 
 
1837
 
      gt1n3m(1) = r_t(1,1) * gtln3m(1) + r_t(1,2) * gtrn3m(1)
1838
 
      gt2n3m(1) = r_t(2,1) * gtln3m(1) + r_t(2,2) * gtrn3m(1)
1839
 
      gt1n3m(2) = r_t(1,1) * gtln3m(2) + r_t(1,2) * gtrn3m(2)
1840
 
      gt2n3m(2) = r_t(2,1) * gtln3m(2) + r_t(2,2) * gtrn3m(2)
1841
 
 
1842
 
      gt1n4m(1) = r_t(1,1) * gtln4m(1) + r_t(1,2) * gtrn4m(1)
1843
 
      gt2n4m(1) = r_t(2,1) * gtln4m(1) + r_t(2,2) * gtrn4m(1)
1844
 
      gt1n4m(2) = r_t(1,1) * gtln4m(2) + r_t(1,2) * gtrn4m(2)
1845
 
      gt2n4m(2) = r_t(2,1) * gtln4m(2) + r_t(2,2) * gtrn4m(2)
1846
 
 
1847
 
      gtln1p(1) = gtln1m(2)
1848
 
      gtln1p(2) = gtln1m(1)
1849
 
      gtrn1p(1) = gtrn1m(2)
1850
 
      gtrn1p(2) = gtrn1m(1)
1851
 
 
1852
 
      gtln2p(1) = gtln2m(2)
1853
 
      gtln2p(2) = gtln2m(1)
1854
 
      gtrn2p(1) = gtrn2m(2)
1855
 
      gtrn2p(2) = gtrn2m(1)
1856
 
 
1857
 
      gtln3p(1) = gtln3m(2)
1858
 
      gtln3p(2) = gtln3m(1)
1859
 
      gtrn3p(1) = gtrn3m(2)
1860
 
      gtrn3p(2) = gtrn3m(1)
1861
 
 
1862
 
      gtln4p(1) = gtln4m(2)
1863
 
      gtln4p(2) = gtln4m(1)
1864
 
      gtrn4p(1) = gtrn4m(2)
1865
 
      gtrn4p(2) = gtrn4m(1)
1866
 
 
1867
 
      gt1n1p(1) = gt1n1m(2)
1868
 
      gt1n1p(2) = gt1n1m(1)
1869
 
      gt2n1p(1) = gt2n1m(2)
1870
 
      gt2n1p(2) = gt2n1m(1)
1871
 
 
1872
 
      gt1n2p(1) = gt1n2m(2)
1873
 
      gt1n2p(2) = gt1n2m(1)
1874
 
      gt2n2p(1) = gt2n2m(2)
1875
 
      gt2n2p(2) = gt2n2m(1)
1876
 
 
1877
 
      gt1n3p(1) = gt1n3m(2)
1878
 
      gt1n3p(2) = gt1n3m(1)
1879
 
      gt2n3p(1) = gt2n3m(2)
1880
 
      gt2n3p(2) = gt2n3m(1)
1881
 
 
1882
 
      gt1n4p(1) = gt1n4m(2)
1883
 
      gt1n4p(2) = gt1n4m(1)
1884
 
      gt2n4p(1) = gt2n4m(2)
1885
 
      gt2n4p(2) = gt2n4m(1)
1886
 
 
1887
 
      if ( ldebug ) then
1888
 
         write(6,*) ' INIT_SUSY: FFS neutralino couplings 2'
1889
 
         write(6,*) '    ',gdln1p,gdrn1p
1890
 
         write(6,*) '    ',gdln1m,gdrn1m
1891
 
         write(6,*) '    ',gdln2p,gdrn2p
1892
 
         write(6,*) '    ',gdln2m,gdrn2m
1893
 
         write(6,*) '    ',gdln3p,gdrn3p
1894
 
         write(6,*) '    ',gdln3m,gdrn3m
1895
 
         write(6,*) '    ',gdln4p,gdrn4p
1896
 
         write(6,*) '    ',gdln4m,gdrn4m
1897
 
         write(6,*) '    ',gbln1p,gbrn1p
1898
 
         write(6,*) '    ',gbln1m,gbrn1m
1899
 
         write(6,*) '    ',gbln2p,gbrn2p
1900
 
         write(6,*) '    ',gbln2m,gbrn2m
1901
 
         write(6,*) '    ',gbln3p,gbrn3p
1902
 
         write(6,*) '    ',gbln3m,gbrn3m
1903
 
         write(6,*) '    ',gbln4p,gbrn4p
1904
 
         write(6,*) '    ',gbln4m,gbrn4m
1905
 
         write(6,*) '    ',guln1p,gurn1p
1906
 
         write(6,*) '    ',guln1m,gurn1m
1907
 
         write(6,*) '    ',guln2p,gurn2p
1908
 
         write(6,*) '    ',guln2m,gurn2m
1909
 
         write(6,*) '    ',guln3p,gurn3p
1910
 
         write(6,*) '    ',guln3m,gurn3m
1911
 
         write(6,*) '    ',guln4p,gurn4p
1912
 
         write(6,*) '    ',gtln4m,gtrn4m
1913
 
         write(6,*) '    ',gtln1p,gtrn1p
1914
 
         write(6,*) '    ',gtln1m,gtrn1m
1915
 
         write(6,*) '    ',gtln2p,gtrn2p
1916
 
         write(6,*) '    ',gtln2m,gtrn2m
1917
 
         write(6,*) '    ',gtln3p,gtrn3p
1918
 
         write(6,*) '    ',gtln3m,gtrn3m
1919
 
         write(6,*) '    ',gtln4p,gtrn4p
1920
 
         write(6,*) '    ',gtln4m,gtrn4m
1921
 
         write(6,*) ' INIT_SUSY: FFS neutralino couplings 2 mixing'
1922
 
         write(6,*) '    ',gb1n1p,gb2n1p
1923
 
         write(6,*) '    ',gb1n1m,gb2n1m
1924
 
         write(6,*) '    ',gb1n2p,gb2n2p
1925
 
         write(6,*) '    ',gb1n2m,gb2n2m
1926
 
         write(6,*) '    ',gb1n3p,gb2n3p
1927
 
         write(6,*) '    ',gb1n3m,gb2n3m
1928
 
         write(6,*) '    ',gb1n4p,gb2n4p
1929
 
         write(6,*) '    ',gb1n4m,gb2n4m
1930
 
         write(6,*) '    ',gt1n4m,gt2n4m
1931
 
         write(6,*) '    ',gt1n1p,gt2n1p
1932
 
         write(6,*) '    ',gt1n1m,gt2n1m
1933
 
         write(6,*) '    ',gt1n2p,gt2n2p
1934
 
         write(6,*) '    ',gt1n2m,gt2n2m
1935
 
         write(6,*) '    ',gt1n3p,gt2n3p
1936
 
         write(6,*) '    ',gt1n3m,gt2n3m
1937
 
         write(6,*) '    ',gt1n4p,gt2n4p
1938
 
         write(6,*) '    ',gt1n4m,gt2n4m
1939
 
      end if
1940
 
c
1941
 
c   chargino-lepton-slepton
1942
 
c
1943
 
      gelx1m(1) = -rt2*gx*  uu(1,1)/rt2
1944
 
      gelx1m(2) = zero
1945
 
C      gerx1m(1) = zero ! doesn't exist
1946
 
C      gerx1m(2) = zero
1947
 
 
1948
 
      gelx2m(1) = -rt2*gx*  uu(2,1)/rt2
1949
 
      gelx2m(2) = zero
1950
 
C      gerx2m(1) = zero ! doesn't exist
1951
 
C      gerx2m(2) = zero
1952
 
 
1953
 
      gelx1p(1) = gelx1m(2)
1954
 
      gelx1p(2) = gelx1m(1)
1955
 
      gelx2p(1) = gelx2m(2)
1956
 
      gelx2p(2) = gelx2m(1)
1957
 
 
1958
 
C      gerx1p(1) = gerx1m(2) ! doesn't exist
1959
 
C      gerx1p(2) = gerx1m(1)
1960
 
C      gerx2p(1) = gerx2m(2) ! doesn't exist
1961
 
C      gerx2p(2) = gerx2m(1)
1962
 
 
1963
 
      gllx1m(1) = -rt2*gx*  uu(1,1)/rt2
1964
 
      gllx1m(2) = zero
1965
 
      glrx1m(1) = -rt2*gx*(-rml/(two*mwx*cb)*uu(1,2))
1966
 
      glrx1m(2) = zero
1967
 
 
1968
 
      gllx2m(1) = -rt2*gx*  uu(2,1)/rt2
1969
 
      gllx2m(2) = zero
1970
 
      glrx2m(1) = -rt2*gx*(-rml/(two*mwx*cb)*uu(2,2))
1971
 
      glrx2m(2) = zero
1972
 
 
1973
 
      gl1x1m(1) = r_l(1,1) * gllx1m(1) + r_l(1,2) * glrx1m(1)
1974
 
      gl2x1m(1) = r_l(2,1) * gllx1m(1) + r_l(2,2) * glrx1m(1)
1975
 
      gl1x1m(2) = r_l(1,1) * gllx1m(2) + r_l(1,2) * glrx1m(2)
1976
 
      gl2x1m(2) = r_l(2,1) * gllx1m(2) + r_l(2,2) * glrx1m(2)
1977
 
 
1978
 
      gl1x2m(1) = r_l(1,1) * gllx2m(1) + r_l(1,2) * glrx2m(1)
1979
 
      gl2x2m(1) = r_l(2,1) * gllx2m(1) + r_l(2,2) * glrx2m(1)
1980
 
      gl1x2m(2) = r_l(1,1) * gllx2m(2) + r_l(1,2) * glrx2m(2)
1981
 
      gl2x2m(2) = r_l(2,1) * gllx2m(2) + r_l(2,2) * glrx2m(2)
1982
 
 
1983
 
      gllx1p(1) = gllx1m(2)
1984
 
      gllx1p(2) = gllx1m(1)
1985
 
      gllx2p(1) = gllx2m(2)
1986
 
      gllx2p(2) = gllx2m(1)
1987
 
 
1988
 
      glrx1p(1) = glrx1m(2)
1989
 
      glrx1p(2) = glrx1m(1)
1990
 
      glrx2p(1) = glrx2m(2)
1991
 
      glrx2p(2) = glrx2m(1)
1992
 
 
1993
 
      gl1x1p(1) = gl1x1m(2)
1994
 
      gl1x1p(2) = gl1x1m(1)
1995
 
      gl2x1p(1) = gl2x1m(2)
1996
 
      gl2x1p(2) = gl2x1m(1)
1997
 
 
1998
 
      gl1x2p(1) = gl1x2m(2)
1999
 
      gl1x2p(2) = gl1x2m(1)
2000
 
      gl2x2p(1) = gl2x2m(2)
2001
 
      gl2x2p(2) = gl2x2m(1)
2002
 
 
2003
 
      gvex1m(1) = -rt2*gx * vv(1,1)/rt2
2004
 
      gvex1m(2) = zero
2005
 
 
2006
 
      gvex2m(1) = -rt2*gx * vv(2,1)/rt2
2007
 
      gvex2m(2) = zero
2008
 
 
2009
 
      gvex1p(1) = gvex1m(2)
2010
 
      gvex1p(2) = gvex1m(1)
2011
 
 
2012
 
      gvex2p(1) = gvex2m(2)
2013
 
      gvex2p(2) = gvex2m(1)
2014
 
 
2015
 
      gvtx1m(1) = -rt2*gx*  vv(1,1)/rt2
2016
 
      gvtx1m(2) = -rt2*gx*(-rml/(two*mwx*cb)*uu(1,2))
2017
 
 
2018
 
      gvtx2m(1) = -rt2*gx*  vv(2,1)/rt2
2019
 
      gvtx2m(2) = -rt2*gx*(-rml/(two*mwx*cb)*uu(2,2))
2020
 
 
2021
 
      gvtx1p(1) = gvtx1m(2)
2022
 
      gvtx1p(2) = gvtx1m(1)
2023
 
 
2024
 
      gvtx2p(1) = gvtx2m(2)
2025
 
      gvtx2p(2) = gvtx2m(1)
2026
 
 
2027
 
      if ( ldebug ) then
2028
 
         write(6,*) ' INIT_SUSY: FFS chargino couplings 1'
2029
 
         write(6,*) '    ',gvex1m,gelx1m
2030
 
         write(6,*) '    ',gvex1p,gelx1p
2031
 
         write(6,*) '    ',gvex2m,gelx2m
2032
 
         write(6,*) '    ',gvex2p,gelx2p
2033
 
         write(6,*) ' INIT_SUSY: FFS chargino couplings 1 mixing'
2034
 
         write(6,*) '    ',gvtx1m,gl1x1m,gl2x1m
2035
 
         write(6,*) '    ',gvtx1p,gl1x1p,gl2x1p
2036
 
         write(6,*) '    ',gvtx2m,gl1x2m,gl2x2m
2037
 
         write(6,*) '    ',gvtx2p,gl1x2p,gl2x2p
2038
 
      end if
2039
 
c
2040
 
c   chargino-quark-squark
2041
 
c     no relative sign, because sqR coupling zero
2042
 
c
2043
 
      gdlx1m(1) = -rt2*gx*  uu(1,1)/rt2
2044
 
      gdlx1m(2) = zero
2045
 
C      gdrx1m(1) = zero
2046
 
C      gdrx1m(2) = zero
2047
 
 
2048
 
      gdlx2m(1) = -rt2*gx*  uu(2,1)/rt2
2049
 
      gdlx2m(2) = zero
2050
 
C      gdrx2m(1) = zero
2051
 
C      gdrx2m(2) = zero
2052
 
 
2053
 
      gdlx1p(1) = gdlx1m(2)
2054
 
      gdlx1p(2) = gdlx1m(1)
2055
 
      gdlx2p(1) = gdlx2m(2)
2056
 
      gdlx2p(2) = gdlx2m(1)
2057
 
 
2058
 
C      gdrx1p(1) = gdrx1m(2)
2059
 
C      gdrx1p(2) = gdrx1m(1)
2060
 
C      gdrx2p(1) = gdrx2m(2)
2061
 
C      gdrx2p(2) = gdrx2m(1)
2062
 
 
2063
 
      gblx1m(1) = -rt2*gx*  uu(1,1)/rt2
2064
 
      gblx1m(2) = -rt2*gx*(-rmt/(two*mwx*sb)*vv(1,2))
2065
 
      gbrx1m(1) = -rt2*gx*(-rmb/(two*mwx*cb)*uu(1,2))
2066
 
      gbrx1m(2) = zero
2067
 
 
2068
 
      gblx2m(1) = -rt2*gx*  uu(2,1)/rt2
2069
 
      gblx2m(2) = -rt2*gx*(-rmt/(two*mwx*sb)*vv(2,2))
2070
 
      gbrx2m(1) = -rt2*gx*(-rmb/(two*mwx*cb)*uu(2,2))
2071
 
      gbrx2m(2) = zero
2072
 
 
2073
 
      gb1x1m(1) = r_b(1,1) * gblx1m(1) + r_b(1,2) * gbrx1m(1)
2074
 
      gb2x1m(1) = r_b(2,1) * gblx1m(1) + r_b(2,2) * gbrx1m(1)
2075
 
      gb1x1m(2) = r_b(1,1) * gblx1m(2) + r_b(1,2) * gbrx1m(2)
2076
 
      gb2x1m(2) = r_b(2,1) * gblx1m(2) + r_b(2,2) * gbrx1m(2)
2077
 
 
2078
 
      gb1x2m(1) = r_b(1,1) * gblx2m(1) + r_b(1,2) * gbrx2m(1)
2079
 
      gb2x2m(1) = r_b(2,1) * gblx2m(1) + r_b(2,2) * gbrx2m(1)
2080
 
      gb1x2m(2) = r_b(1,1) * gblx2m(2) + r_b(1,2) * gbrx2m(2)
2081
 
      gb2x2m(2) = r_b(2,1) * gblx2m(2) + r_b(2,2) * gbrx2m(2)
2082
 
 
2083
 
      gblx1p(1) = gblx1m(2)
2084
 
      gblx1p(2) = gblx1m(1)
2085
 
      gblx2p(1) = gblx2m(2)
2086
 
      gblx2p(2) = gblx2m(1)
2087
 
 
2088
 
      gbrx1p(1) = gbrx1m(2)
2089
 
      gbrx1p(2) = gbrx1m(1)
2090
 
      gbrx2p(1) = gbrx2m(2)
2091
 
      gbrx2p(2) = gbrx2m(1)
2092
 
 
2093
 
      gb1x1p(1) = gb1x1m(2)
2094
 
      gb1x1p(2) = gb1x1m(1)
2095
 
      gb2x1p(1) = gb2x1m(2)
2096
 
      gb2x1p(2) = gb2x1m(1)
2097
 
 
2098
 
      gb1x2p(1) = gb1x2m(2)
2099
 
      gb1x2p(2) = gb1x2m(1)
2100
 
      gb2x2p(1) = gb2x2m(2)
2101
 
      gb2x2p(2) = gb2x2m(1)
2102
 
 
2103
 
      gulx1m(1) = -rt2*gx*  vv(1,1)/rt2
2104
 
      gulx1m(2) = zero
2105
 
C      gurx1m(1) = zero
2106
 
C      gurx1m(2) = zero
2107
 
 
2108
 
      gulx2m(1) = -rt2*gx*  vv(2,1)/rt2
2109
 
      gulx2m(2) = zero
2110
 
C      gurx2m(1) = zero
2111
 
C      gurx2m(2) = zero
2112
 
 
2113
 
      gulx1p(1) = gulx1m(2)
2114
 
      gulx1p(2) = gulx1m(1)
2115
 
      gulx2p(1) = gulx2m(2)
2116
 
      gulx2p(2) = gulx2m(1)
2117
 
 
2118
 
C      gurx1p(1) = gurx1m(2)
2119
 
C      gurx1p(2) = gurx1m(1)
2120
 
C      gurx2p(1) = gurx2m(2)
2121
 
C      gurx2p(2) = gurx2m(1)
2122
 
 
2123
 
      gtlx1m(1) = -rt2*gx*  vv(1,1)/rt2
2124
 
      gtlx1m(2) = -rt2*gx*(-rmb/(two*mwx*cb)*uu(1,2))
2125
 
      gtrx1m(1) = -rt2*gx*(-rmt/(two*mwx*sb)*vv(1,2))
2126
 
      gtrx1m(2) = zero
2127
 
 
2128
 
      gtlx2m(1) = -rt2*gx*  vv(2,1)/rt2
2129
 
      gtlx2m(2) = -rt2*gx*(-rmb/(two*mwx*cb)*uu(2,2))
2130
 
      gtrx2m(1) = -rt2*gx*(-rmt/(two*mwx*sb)*vv(2,2))
2131
 
      gtrx2m(2) = zero
2132
 
 
2133
 
      gt1x1m(1) = r_t(1,1) * gtlx1m(1) + r_t(1,2) * gtrx1m(1)
2134
 
      gt2x1m(1) = r_t(2,1) * gtlx1m(1) + r_t(2,2) * gtrx1m(1)
2135
 
      gt1x1m(2) = r_t(1,1) * gtlx1m(2) + r_t(1,2) * gtrx1m(2)
2136
 
      gt2x1m(2) = r_t(2,1) * gtlx1m(2) + r_t(2,2) * gtrx1m(2)
2137
 
 
2138
 
      gt1x2m(1) = r_t(1,1) * gtlx2m(1) + r_t(1,2) * gtrx2m(1)
2139
 
      gt2x2m(1) = r_t(2,1) * gtlx2m(1) + r_t(2,2) * gtrx2m(1)
2140
 
      gt1x2m(2) = r_t(1,1) * gtlx2m(2) + r_t(1,2) * gtrx2m(2)
2141
 
      gt2x2m(2) = r_t(2,1) * gtlx2m(2) + r_t(2,2) * gtrx2m(2)
2142
 
 
2143
 
      gtlx1p(1) = gtlx1m(2)
2144
 
      gtlx1p(2) = gtlx1m(1)
2145
 
      gtlx2p(1) = gtlx2m(2)
2146
 
      gtlx2p(2) = gtlx2m(1)
2147
 
 
2148
 
      gtrx1p(1) = gtrx1m(2)
2149
 
      gtrx1p(2) = gtrx1m(1)
2150
 
      gtrx2p(1) = gtrx2m(2)
2151
 
      gtrx2p(2) = gtrx2m(1)
2152
 
 
2153
 
      gt1x1p(1) = gt1x1m(2)
2154
 
      gt1x1p(2) = gt1x1m(1)
2155
 
      gt2x1p(1) = gt2x1m(2)
2156
 
      gt2x1p(2) = gt2x1m(1)
2157
 
 
2158
 
      gt1x2p(1) = gt1x2m(2)
2159
 
      gt1x2p(2) = gt1x2m(1)
2160
 
      gt2x2p(1) = gt2x2m(2)
2161
 
      gt2x2p(2) = gt2x2m(1)
2162
 
 
2163
 
      if ( ldebug ) then
2164
 
         write(6,*) ' INIT_SUSY: FFS chargino couplings 2'
2165
 
         write(6,*) '    ',gulx1m,gdlx1m
2166
 
         write(6,*) '    ',gulx1p,gdlx1p
2167
 
         write(6,*) '    ',gulx2m,gdlx2m
2168
 
         write(6,*) '    ',gulx2p,gdlx2p
2169
 
         write(6,*) ' INIT_SUSY: FFS chargino couplings 2 mixing'
2170
 
         write(6,*) '    ',gt1x1m,gb1x1m
2171
 
         write(6,*) '    ',gt1x1p,gb1x1p
2172
 
         write(6,*) '    ',gt1x2m,gb1x2m
2173
 
         write(6,*) '    ',gt1x2p,gb1x2p
2174
 
         write(6,*) '    ',gt2x1m,gb2x1m
2175
 
         write(6,*) '    ',gt2x1p,gb2x1p
2176
 
         write(6,*) '    ',gt2x2m,gb2x2m
2177
 
         write(6,*) '    ',gt2x2p,gb2x2p
2178
 
      end if
2179
 
cc
2180
 
C      call log_file(mzx,mwx,gf,unimass,lowmass,bw,pz,uu,vv)
2181
 
ccc
2182
 
      return
2183
 
      end
2184
 
c
2185
 
c=======================================================================
2186
 
c
2187
 
c subroutine INIT_SUSY_QCD
2188
 
c
2189
 
c   all mixing matrices assumed to be real
2190
 
c       -> negative mass eigenvalues
2191
 
c
2192
 
c   particles are always those with negative charge (e.g. charginos)
2193
 
c   weak parameter are give through common block
2194
 
c
2195
 
c   ordering for FFV and FFS: F_in, F_out, V/S
2196
 
c   where this ordering is also reflected in the name of the coupling
2197
 
c   same thing in Kaoru's writeup: F_out, F_in, S/V
2198
 
c
2199
 
c   arrays for fermion couplings: 1=L and 2=R
2200
 
c
2201
 
c   Notes:
2202
 
c     1. gc  used in just about all SUSY QCD processes
2203
 
c     2. g2c used in g-g-sq-sq processes
2204
 
c     3. ggi used in g-g-go-go, go-go-sq-sq and g-go-q-sq processes
2205
 
c
2206
 
c=======================================================================
2207
 
c
2208
 
      subroutine INIT_SUSY_QCD(gs)
2209
 
      implicit none
2210
 
c
2211
 
c input/output variables
2212
 
c
2213
 
      double precision  gs
2214
 
c
2215
 
c global variables (couplings)
2216
 
c
2217
 
      include 'coupl.inc'
2218
 
 
2219
 
      double precision  sw, sw2, cw, tw, s2w, c2w, e, gx, gz,
2220
 
     &                  qe, qu, qd, t3e, t3v, t3u, t3d, rt2, pi,
2221
 
     &                  r_l(2,2), r_b(2,2), r_t(2,2)
2222
 
      common /ewparam/  sw, sw2, cw, tw, s2w, c2w, e, gx, gz,
2223
 
     &                  qe, qu, qd, t3e, t3v, t3u, t3d, rt2, pi,
2224
 
     &                  r_l, r_b, r_t
2225
 
 
2226
 
c local variables
2227
 
c
2228
 
      double precision  zero, two
2229
 
      parameter ( zero = 0d0, two = 2d0 )
2230
 
 
2231
 
      logical     ldebug
2232
 
      parameter ( ldebug = .false. )
2233
 
c
2234
 
c basic SUSY-QCD couplings
2235
 
c
2236
 
c      PRINT *,'INIT_SUSY_QCD: alpha_s = ',gs**2/(4d0*pi)
2237
 
 
2238
 
      gc  = dcmplx( - gs , zero ) ! original; works for sq-sq~ production
2239
 
 
2240
 
      g2c = dcmplx( gs**2, zero ) ! original
2241
 
 
2242
 
      ggi(1) = dcmplx(-gs,zero) ! - (no i) fixed by qq~,gg -> gogo and 'in,out' MG rule
2243
 
      ggi(2) = ggi(1)
2244
 
 
2245
 
      gqlgom(1) = - rt2*gs
2246
 
      gqlgom(2) = zero
2247
 
 
2248
 
      gqrgom(1) = zero
2249
 
      gqrgom(2) =   rt2*gs
2250
 
 
2251
 
      gqlgop(1) = gqlgom(2) ! s.b. NO relative sign for 'p' and 'm' types
2252
 
      gqlgop(2) = gqlgom(1)
2253
 
      gqrgop(1) = gqrgom(2)
2254
 
      gqrgop(2) = gqrgom(1)
2255
 
 
2256
 
      gb1gom(1) = r_b(1,1) * gqlgom(1) + r_b(1,2) * gqrgom(1)
2257
 
      gb2gom(1) = r_b(2,1) * gqlgom(1) + r_b(2,2) * gqrgom(1)
2258
 
      gb1gom(2) = r_b(1,1) * gqlgom(2) + r_b(1,2) * gqrgom(2)
2259
 
      gb2gom(2) = r_b(2,1) * gqlgom(2) + r_b(2,2) * gqrgom(2)
2260
 
 
2261
 
      gb1gop(1) = gb1gom(2)
2262
 
      gb1gop(2) = gb1gom(1)
2263
 
      gb2gop(1) = gb2gom(2)
2264
 
      gb2gop(2) = gb2gom(1)
2265
 
 
2266
 
      gt1gom(1) = r_t(1,1) * gqlgom(1) + r_t(1,2) * gqrgom(1)
2267
 
      gt2gom(1) = r_t(2,1) * gqlgom(1) + r_t(2,2) * gqrgom(1)
2268
 
      gt1gom(2) = r_t(1,1) * gqlgom(2) + r_t(1,2) * gqrgom(2)
2269
 
      gt2gom(2) = r_t(2,1) * gqlgom(2) + r_t(2,2) * gqrgom(2)
2270
 
 
2271
 
      gt1gop(1) = gt1gom(2)
2272
 
      gt1gop(2) = gt1gom(1)
2273
 
      gt2gop(1) = gt2gom(2)
2274
 
      gt2gop(2) = gt2gom(1)
2275
 
 
2276
 
      if ( ldebug ) then
2277
 
         write(6,*) ' INIT_SUSY: gluino couplings '
2278
 
         write(6,*) ' gqlgom(1:2) ',dble(gqlgom(1)),dble(gqlgom(2))
2279
 
         write(6,*) ' gqlgop(1:2) ',dble(gqlgop(1)),dble(gqlgop(2))
2280
 
         write(6,*) ' gqrgom(1:2) ',dble(gqrgom(1)),dble(gqrgom(2))
2281
 
         write(6,*) ' gqrgop(1:2) ',dble(gqrgop(1)),dble(gqrgop(2))
2282
 
         write(6,*) ' gb1gom(1:2) ',dble(gb1gom(1)),dble(gb1gom(2))
2283
 
         write(6,*) ' gb2gom(1:2) ',dble(gb2gom(1)),dble(gb2gom(2))
2284
 
         write(6,*) ' gb1gop(1:2) ',dble(gb1gop(1)),dble(gb1gop(2))
2285
 
         write(6,*) ' gb2gop(1:2) ',dble(gb2gop(1)),dble(gb2gop(2))
2286
 
         write(6,*) ' gt1gom(1:2) ',dble(gt1gom(1)),dble(gt1gom(2))
2287
 
         write(6,*) ' gt2gom(1:2) ',dble(gt2gom(1)),dble(gt2gom(2))
2288
 
         write(6,*) ' gt1gop(1:2) ',dble(gt1gop(1)),dble(gt1gop(2))
2289
 
         write(6,*) ' gt2gop(1:2) ',dble(gt2gop(1)),dble(gt2gop(2))
2290
 
      end if 
2291
 
 
2292
 
      if ( ldebug ) then
2293
 
         write(6,*) ' INIT_SUSY: SUSY-QCD couplings'
2294
 
         write(6,*) ' GC ', gc
2295
 
         write(6,*) ' G2C', g2c
2296
 
         write(6,*) ' GGI', ggi
2297
 
      end if
2298
 
c
2299
 
c VVSS couplings - mixed QCD-QED/QFD
2300
 
c
2301
 
      ggadldl = two * gs * e*qd
2302
 
      ggaulul = two * gs * e*qu
2303
 
 
2304
 
      if ( ldebug ) then
2305
 
         write(6,*) ' INIT_SUSY: g-photon-s-s couplings '
2306
 
         write(6,*) 'qL,qL',ggadldl,ggaulul
2307
 
      end if
2308
 
 
2309
 
      ggzdldl = two * gs * gz*(t3d-qd*sw2)
2310
 
      ggzdrdr = two * gs * gz*(   -qd*sw2)
2311
 
      ggzulul = two * gs * gz*(t3u-qu*sw2)
2312
 
      ggzurur = two * gs * gz*(   -qu*sw2)
2313
 
 
2314
 
      ggzb1b1 = r_b(1,1)**2    * ggzdldl + r_b(1,2)**2    * ggzdrdr
2315
 
      ggzb2b2 = r_b(2,1)**2    * ggzdldl + r_b(2,2)**2    * ggzdrdr
2316
 
      ggzb1b2 = r_b(2,1)*r_b(1,1)* ggzdldl + r_b(1,2)*r_b(2,2)* ggzdrdr
2317
 
      ggzb2b1 = r_b(2,1)*r_b(1,1)* ggzdldl + r_b(1,2)*r_b(2,2)* ggzdrdr
2318
 
 
2319
 
      ggzt1t1 = r_t(1,1)**2    * ggzulul + r_t(1,2)**2    * ggzurur
2320
 
      ggzt2t2 = r_t(2,1)**2    * ggzulul + r_t(2,2)**2    * ggzurur
2321
 
      ggzt1t2 = r_t(2,1)*r_t(1,1)* ggzulul + r_t(1,2)*r_t(2,2)* ggzurur
2322
 
      ggzt2t1 = r_t(2,1)*r_t(1,1)* ggzulul + r_t(1,2)*r_t(2,2)* ggzurur
2323
 
 
2324
 
      if ( ldebug ) then
2325
 
         write(6,*) ' INIT_SUSY: g-Z-s-s couplings '
2326
 
         write(6,*) 'qL,qL',ggzdldl,ggzulul
2327
 
         write(6,*) 'qR,qR',ggzdrdr,ggzurur
2328
 
         write(6,*) 'q1,q1',ggzb1b1,ggzt1t1
2329
 
         write(6,*) 'q2,q2',ggzb2b2,ggzt2t2
2330
 
         write(6,*) 'q1,q2',ggzb1b2,ggzt1t2
2331
 
         write(6,*) 'q2,q1',ggzb2b1,ggzt2t1
2332
 
      end if
2333
 
 
2334
 
      ggwuldl = rt2*gx*gs
2335
 
      ggwdlul = ggwuldl
2336
 
 
2337
 
      ggwb1t1 =  r_b(1,1)*r_t(1,1) * ggwdlul
2338
 
      ggwb1t2 =  r_b(1,1)*r_t(2,1) * ggwdlul
2339
 
      ggwb2t1 =  r_b(2,1)*r_t(1,1) * ggwdlul
2340
 
      ggwb2t2 =  r_b(2,1)*r_t(2,1) * ggwdlul
2341
 
 
2342
 
      ggwt1b1 = ggwb1t1
2343
 
      ggwt2b1 = ggwb1t2
2344
 
      ggwt1b2 = ggwb2t1
2345
 
      ggwt2b2 = ggwb2t2
2346
 
 
2347
 
      if ( ldebug ) then
2348
 
         write(6,*) ' INIT_SUSY: g-W-s-s couplings '
2349
 
         write(6,*) 'qL,qL',ggwuldl,ggwdlul
2350
 
         write(6,*) 'q1,q1',ggwt1b1,ggwb1t1
2351
 
         write(6,*) 'q1,q2',ggwt1b2,ggwb1t2
2352
 
         write(6,*) 'q2,q1',ggwt1b1,ggwb2t1
2353
 
         write(6,*) 'q2,q2',ggwt2b2,ggwb2t2
2354
 
      end if
2355
 
ccc
2356
 
      return
2357
 
      end