8 SUBROUTINE pyrvne(KFIN,XLAM,IDLAM,LKNT)
11 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
14 parameter(ksusy1=1000000,ksusy2=2000000,ktechn=3000000,
15 &kexcit=4000000,kdimen=5000000)
17 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
18 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
19 common/
pymssm/imss(0:99),rmss(0:99)
20 common/
pyssmt/zmix(4,4),umix(2,2),vmix(2,2),smz(4),smw(2),
21 &sfmix(16,4),zmixi(4,4),umixi(2,2),vmixi(2,2)
22 common/pymsrv/rvlam(3,3,3), rvlamp(3,3,3), rvlamb(3,3,3)
24 common/pyrvnv/ab(2,16,2),
rms(0:3),res(6,2),intres(6,3),idr,idr2
26 DOUBLE PRECISION xlam(0:400)
27 DOUBLE PRECISION zpmix(4,4), nmix(4,4), rmq(6)
28 INTEGER idlam(400,3),
pycomp
33 IF ((imss(51).GE.1).OR.(imss(52).GE.1).OR.(imss(53).GE.1))
THEN
35 IF(kfsm.EQ.22.OR.kfsm.EQ.23.OR.kfsm.EQ.25.OR.kfsm.EQ.35)
THEN
38 IF (kfsm.EQ.23) nchi=2
39 IF (kfsm.EQ.25) nchi=3
40 IF (kfsm.EQ.35) nchi=4
43 IF (smz(nchi).LT.0d0) ism = -ism
47 echg = 2*sqrt(paru(103)*paru(1))
48 cosb=1/(sqrt(1+rmss(5)**2))
49 sinb=rmss(5)/sqrt(1+rmss(5)**2)
50 cosw=sqrt(1-paru(102))
52 gw=2d0*sqrt(paru(103)*paru(1))/sinw
55 sqmchi=pmas(
pycomp(kfin),1)**2
61 zpmix(nchj,1)= zmix(nchj,1)*cosw+zmix(nchj,2)*sinw
62 zpmix(nchj,2)=-zmix(nchj,1)*sinw+zmix(nchj,2)*cosw
63 zpmix(nchj,3)= zmix(nchj,3)
64 zpmix(nchj,4)= zmix(nchj,4)
66 c1=gw*zpmix(nchi,3)/(2d0*cosb*wmass)
67 c1u=gw*zpmix(nchi,4)/(2d0*sinb*wmass)
69 c3=gw*zpmix(nchi,2)/cosw
81 ab(1,
i,1)=ism*(cms*c1*sfmix(
i,1) + sfmix(
i,2)
83 ab(1,
i,2)=ism*(cms*c1*sfmix(
i,3) + sfmix(
i,4)
85 ab(2,
i,1)= cms*c1*sfmix(
i,2) - sfmix(
i,1)*(
c2+c3*(5d-1-sinw
87 ab(2,
i,2)=cms*c1*sfmix(
i,4) - sfmix(
i,3)*(
c2+c3*(5d-1-sinw
97 ab(1,
j,1)=ism*(cms*c1*sfmix(
j,1) - sfmix(
j,2)
98 & *ed*(
c2-c3*sinw**2))
99 ab(1,
j,2)=ism*(cms*c1*sfmix(
j,3) - sfmix(
j,4)
100 & *ed*(
c2-c3*sinw**2))
101 ab(2,
j,1)=cms*c1*sfmix(
j,2) + sfmix(
j,1)
102 & *(ed*
c2-c3*(1d0/2d0+ed*sinw**2))
103 ab(2,
j,2)=cms*c1*sfmix(
j,4) + sfmix(
j,3)
104 & *(ed*
c2-c3*(1d0/2d0+ed*sinw**2))
108 ab(1,
j,1)=ism*(cms*c1u*sfmix(
j,1) - sfmix(
j,2)
109 & *eu*(
c2-c3*sinw**2))
110 ab(1,
j,2)=ism*(cms*c1u*sfmix(
j,3) - sfmix(
j,4)
111 & *eu*(
c2-c3*sinw**2))
112 ab(2,
j,1)=cms*c1u*sfmix(
j,2) + sfmix(
j,1)
113 & *(eu*
c2+c3*(1d0/2d0-eu*sinw**2))
114 ab(2,
j,2)=cms*c1u*sfmix(
j,4) + sfmix(
j,3)
115 & *(eu*
c2+c3*(1d0/2d0-eu*sinw**2))
118 IF (imss(51).GE.1)
THEN
124 IF(mod(isc/9,3).NE.mod(isc/3,3))
THEN
126 idlam(lknt,1) =-12 -2*mod(isc/9,3)
127 idlam(lknt,2) =-11 -2*mod(isc/3,3)
128 idlam(lknt,3) = 11 +2*mod(isc,3)
131 rvlamc = rvlam(mod(isc/9,3)+1,mod(isc/3,3)+1
134 IF (idlam(lknt,2).EQ.-15.OR.idlam(lknt,3).EQ.15)
137 kfr(1)=-idlam(lknt,1)
138 kfr(2)=-idlam(lknt,2)
139 kfr(3)=-idlam(lknt,3)
141 CALL
pyrvgw(kfin,idlam(lknt,1),idlam(lknt,2),
142 & idlam(lknt,3),xlam(lknt))
143 xlam(lknt)=xlam(lknt)*rvlamc/((2*paru(1)*
rms(0))**3*32)
146 idlam(lknt,1)=-idlam(lknt-1,1)
147 idlam(lknt,2)=-idlam(lknt-1,2)
148 idlam(lknt,3)=-idlam(lknt-1,3)
149 xlam(lknt)=xlam(lknt-1)
151 IF (xlam(lknt).EQ.0d0)
THEN
158 IF (imss(52).GE.1)
THEN
163 idlam(lknt,1) =-12 -2*mod(isc/9,3)
164 idlam(lknt,2) = -1 -2*mod(isc/3,3)
165 idlam(lknt,3) = 1 +2*mod(isc,3)
168 rvlamc = 3 * rvlamp(mod(isc/9,3)+1,mod(isc/3,3)+1
171 IF (idlam(lknt,2).EQ.-5.OR.idlam(lknt,3).EQ.5)
174 kfr(1)=-idlam(lknt,1)
175 kfr(2)=-idlam(lknt,2)
176 kfr(3)=-idlam(lknt,3)
178 CALL
pyrvgw(kfin,idlam(lknt,1),idlam(lknt,2),idlam(lknt,3)
180 xlam(lknt)=xlam(lknt)*rvlamc/((2*paru(1)*
rms(0))**3*32)
183 idlam(lknt,1)=-idlam(lknt-1,1)
184 idlam(lknt,2)=-idlam(lknt-1,2)
185 idlam(lknt,3)=-idlam(lknt-1,3)
186 xlam(lknt)=xlam(lknt-1)
188 IF (xlam(lknt).EQ.0d0)
THEN
194 idlam(lknt,1) =-11 -2*mod(isc/9,3)
195 idlam(lknt,2) = -2 -2*mod(isc/3,3)
196 idlam(lknt,3) = 1 +2*mod(isc,3)
199 rvlamc = 3 * rvlamp(mod(isc/9,3)+1,mod(isc/3,3)+1
202 IF (idlam(lknt,1).EQ.-15.OR.idlam(lknt,2).EQ.-6
203 & .OR.idlam(lknt,3).EQ.5) dcmass=.
true.
205 kfr(1)=-idlam(lknt,1)
206 kfr(2)=-idlam(lknt,2)
207 kfr(3)=-idlam(lknt,3)
209 CALL
pyrvgw(kfin,idlam(lknt,1),idlam(lknt,2),idlam(lknt,3)
211 xlam(lknt)=xlam(lknt)*rvlamc/((2*paru(1)*
rms(0))**3*32)
214 idlam(lknt,1)=-idlam(lknt-1,1)
215 idlam(lknt,2)=-idlam(lknt-1,2)
216 idlam(lknt,3)=-idlam(lknt-1,3)
217 xlam(lknt)=xlam(lknt-1)
219 IF (xlam(lknt).EQ.0d0)
THEN
225 IF (imss(53).GE.1)
THEN
230 IF (mod(isc/3,3).LT.mod(isc,3))
THEN
232 idlam(lknt,1) = -2 -2*mod(isc/9,3)
233 idlam(lknt,2) = -1 -2*mod(isc/3,3)
234 idlam(lknt,3) = -1 -2*mod(isc,3)
237 rvlamc = 6. * rvlamb(mod(isc/9,3)+1,mod(isc/3,3)
238 & +1,mod(isc,3)+1)**2
240 IF (idlam(lknt,1).EQ.-6.OR.idlam(lknt,2).EQ.-5
241 & .OR.idlam(lknt,3).EQ.-5) dcmass=.
true.
243 kfr(1) = idlam(lknt,1)
244 kfr(2) = idlam(lknt,2)
245 kfr(3) = idlam(lknt,3)
247 CALL
pyrvgw(kfin,idlam(lknt,1),idlam(lknt,2),
248 & idlam(lknt,3),xlam(lknt))
249 xlam(lknt)=xlam(lknt)*rvlamc/((2*paru(1)*
rms(0))**3*32)
252 idlam(lknt,1)=-idlam(lknt-1,1)
253 idlam(lknt,2)=-idlam(lknt-1,2)
254 idlam(lknt,3)=-idlam(lknt-1,3)
255 xlam(lknt)=xlam(lknt-1)
257 IF (xlam(lknt).EQ.0d0)
THEN