]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ISAJET/isasusy/ssmass.F
Moved from AliTransbit to AliL3Transbit.
[u/mrichter/AliRoot.git] / ISAJET / isasusy / ssmass.F
CommitLineData
0795afa3 1#include "isajet/pilot.h"
2 SUBROUTINE SSMASS(XM1,XM2,IALLOW,ILOOP,MHLNEG,MHCNEG,IMODEL)
3C-----------------------------------------------------------------------
4C
5C Diagonalize neutralino, chargino, and Higgs mass matrices
6C and save results in /SSPAR/.
7C
8C If XM1, XM2 < 1E19, use them for the U(1) and SU(2) mass
9C terms. Otherwise calculate them from AMGLSS and unification.
10C
11C Return IALLOW = 1 if Z1SS is not LSP
12C IALLOW = 0 otherwise
13C
14C-----------------------------------------------------------------------
15#if defined(CERNLIB_IMPNONE)
16 IMPLICIT NONE
17#endif
18#include "isajet/sslun.inc"
19#include "isajet/sssm.inc"
20#include "isajet/sspar.inc"
21#include "isajet/ssinf.inc"
22C
23 REAL XM1,XM2
24 INTEGER IALLOW,MHLNEG,MHCNEG,IMODEL
25 REAL AR(4,4),WORK(4),WR(4)
26 REAL ZETA,ZETAS,YM,XM,COS2A,SINA,AL,SIN2A,COSA,MU2,GP,G,
27 $TEMP,VS,VP,V,MTAMTA,MTAMB,MTAMZ,ASMB,MBMB,
28 $ASMT,MTMT,SUALFE,SUALFS
29 REAL MW1,MW2,THX,THY,MU1
30 REAL COSB,SINB,BE,COS2B,SIN2B,PI,SR2,HIGFRZ,MTQ,MBQ
31 REAL TERM1,TERM2,TERM3,TANTHT,AMGLMZ,SSPOLE,TANTHB,TANTHL
32 REAL CS2THW,DELCHI,AM2
33 DOUBLE PRECISION SSMQCD
34 COMPLEX*16 SSB0,SSB1,ZZZ
35 REAL*8 REAL8
36 INTEGER I,J,K,IERR,ILOOP
37C
38 REAL8(ZZZ)=DREAL(ZZZ)
39 IALLOW=0
40 PI=4.*ATAN(1.)
41 SR2=SQRT(2.)
42 G=SQRT(4.*PI*ALFAEM/SN2THW)
43 GP=G*SQRT(SN2THW/(1.-SN2THW))
44 CS2THW=1.-SN2THW
45C
46 BE=ATAN(1./RV2V1)
47 SINB=SIN(BE)
48 COSB=COS(BE)
49 SIN2B=SIN(2.*BE)
50 COS2B=COS(2.*BE)
51 HIGFRZ=MAX(AMZ,SQRT(AMTLSS*AMTRSS))
52C
53C Compute m(tau), m(b) at z scale using qcd, qed
54C
55 MTAMTA=AMTAU*(1.-SUALFE(AMTAU**2)/PI)
56 MTAMB=MTAMTA*(SUALFE(AMBT**2)/SUALFE(AMTAU**2))**(-27./76.)
57 MTAMZ=MTAMB*(SUALFE(AMZ**2)/SUALFE(AMBT**2))**(-27./80.)
58 ASMB=SUALFS(AMBT**2,.36,AMTP,3)
59 MBMB=AMBT*(1.-4*ASMB/3./PI)
60 MBQ=SSMQCD(DBLE(MBMB),DBLE(HIGFRZ))
61 ASMT=SUALFS(AMTP**2,.36,AMTP,3)
62 MTMT=AMTP/(1.+4*ASMT/3./PI+(16.11-1.04*(5.-6.63/AMTP))*
63 $(ASMT/PI)**2)
64 MTQ=SSMQCD(DBLE(MTMT),DBLE(HIGFRZ))
65C
66C Light/heavy stop states and mixing angle
67C
68 TERM1=(AMTLSS**2+AMTRSS**2)/2.+AMZ**2*COS2B/4.+MTQ**2
69 TERM2=((AMTLSS**2-AMTRSS**2)/2.+COS2B*(8.*AMW**2-5.*AMZ**2)
70 $/12.)**2
71 TERM3=SQRT(TERM2+MTQ**2*(TWOM1*COSB/SINB+AAT)**2)
72 IF (TERM1.GT.TERM3) THEN
73 AMT1SS=SQRT(TERM1-TERM3)
74 ELSE
75 AMT1SS=0.1
76 END IF
77 AMT2SS=SQRT(TERM1+TERM3)
78 IF (AAT.NE.TWOM1*COSB/SINB) THEN
79 TANTHT=(AMT1SS**2-MTQ**2+AMZ**2*COS2B*(-.5+2*SN2THW/3.)-
80 $ AMTLSS**2)/MTQ/(TWOM1*COSB/SINB+AAT)
81 THETAT=ATAN(TANTHT)
82 ELSE
83 THETAT=PI/2.
84 END IF
85C
86C Light/heavy sbottom states and mixing angle
87C
88 TERM1=(AMBLSS**2+AMBRSS**2)/2.-AMZ**2*COS2B/4.+MBQ**2
89 TERM2=((AMBLSS**2-AMBRSS**2)/2.-COS2B*(4.*AMW**2-AMZ**2)
90 $/12.)**2
91 TERM3=SQRT(TERM2+MBQ**2*(TWOM1*SINB/COSB+AAB)**2)
92 IF (TERM1.GT.TERM3) THEN
93 AMB1SS=SQRT(TERM1-TERM3)
94 ELSE
95 AMB1SS=0.1
96 END IF
97 AMB2SS=SQRT(TERM1+TERM3)
98 TANTHB=(AMB1SS**2-MBQ**2+AMZ**2*COS2B*(.5-SN2THW/3.)-
99 $AMBLSS**2)/MBQ/(TWOM1*SINB/COSB+AAB)
100 THETAB=ATAN(TANTHB)
101C
102C Light/heavy stau states and mixing angle
103C
104 TERM1=(AMLLSS**2+AMLRSS**2)/2.-AMZ**2*COS2B/4.+MTAMZ**2
105 TERM2=((AMLLSS**2-AMLRSS**2)/2.-COS2B*(4.*AMW**2-3*AMZ**2)
106 $/4.)**2
107 TERM3=SQRT(TERM2+MTAMZ**2*(TWOM1*SINB/COSB+AAL)**2)
108C if stau mass^2<0, then set to tiny mass so point is excluded
109 IF (TERM1.GT.TERM3) THEN
110 AML1SS=SQRT(TERM1-TERM3)
111 ELSE
112 AML1SS=0.1
113 END IF
114 AML2SS=SQRT(TERM1+TERM3)
115 TANTHL=(AML1SS**2-MTAMZ**2+AMZ**2*COS2B*(.5-SN2THW)-
116 $AMLLSS**2)/MTAMZ/(TWOM1*SINB/COSB+AAL)
117 THETAL=ATAN(TANTHL)
118C
119C define msbar gluino mass at mz from physical gluino mass
120 AMGLMZ=SSPOLE(AMGLSS,AMZ**2,-ALFA3)
121 VS=2.*AMW**2/G**2/(1.+RV2V1**2)
122 V=SQRT(VS)
123 VP=RV2V1*V
124C
125C Use either explicit values or scaling to determine SU(2)
126C and U(1) mass terms. NOTE SIGN CONVENTION!
127C
128 IF(ABS(XM2).LT.1.E19.AND.ABS(XM1).LT.1.E19) THEN
129 MU2=-XM2
130 MU1=-XM1
131 ELSE
132 MU2=-ALFA2*AMGLMZ/ALFA3
133 MU1=5*SN2THW/3./(1.-SN2THW)*MU2
134 ENDIF
135C
136C Neutralino mass matrix
137C
138 AR(1,1)=0.
139 AR(1,2)=-TWOM1
140 AR(1,3)=-G*V/SR2
141 AR(1,4)=GP*V/SR2
142 AR(2,1)=-TWOM1
143 AR(2,2)=0.
144 AR(2,3)=G*VP/SR2
145 AR(2,4)=-GP*VP/SR2
146 AR(3,1)=-G*V/SR2
147 AR(3,2)=G*VP/SR2
148 AR(3,3)=MU2
149 AR(3,4)=0.
150 AR(4,1)=GP*V/SR2
151 AR(4,2)=-GP*VP/SR2
152 AR(4,3)=0.
153 AR(4,4)=MU1
154C
155 CALL EISRS1(4,4,AR,WR,ZMIXSS,IERR,WORK)
156 IF (IERR.NE.0) THEN
157 WRITE(LOUT,*) 'EISRS1 ERROR IN SSMASS, IERR=',IERR
158 STOP99
159 END IF
160C
161C Sort eigenvectors and eigenvalues according to masses
162C
163 DO 10 I=1,3
164 DO 11 J=I+1,4
165 IF (ABS(WR(I)).GT.ABS(WR(J))) THEN
166 TEMP=WR(J)
167 WR(J)=WR(I)
168 WR(I)=TEMP
169 DO 12 K=1,4
170 TEMP=ZMIXSS(K,J)
171 ZMIXSS(K,J)=ZMIXSS(K,I)
172 ZMIXSS(K,I)=TEMP
17312 CONTINUE
174 END IF
17511 CONTINUE
17610 CONTINUE
177C
178 AMZ1SS=WR(1)
179 AMZ2SS=WR(2)
180 AMZ3SS=WR(3)
181 AMZ4SS=WR(4)
182C
183C Chargino mass matrix
184C
185 AL=ATAN(RV2V1)
186 SINA=SIN(AL)
187 COSA=COS(AL)
188 SIN2A=SIN(2.*AL)
189 COS2A=COS(2.*AL)
190 ZETAS=(TWOM1**2-MU2**2)**2
191 $+4*AMW**2*(AMW**2*COS2A**2+TWOM1**2+MU2**2+2*TWOM1*MU2*SIN2A)
192 ZETA=SQRT(ZETAS)
193 XM=-(TWOM1**2-MU2**2-2*AMW**2*COS2A-ZETA)
194 $/(2*SR2*AMW*(MU2*SINA+TWOM1*COSA))
195 YM=-(TWOM1**2-MU2**2+2*AMW**2*COS2A-ZETA)
196 $/(2*SR2*AMW*(MU2*COSA+TWOM1*SINA))
197 IF (XM.NE.0.) THEN
198 GAMMAL=ATAN(1./XM)
199 ELSE
200 GAMMAL=PI/2.
201 END IF
202 IF (YM.NE.0.) THEN
203 GAMMAR=ATAN(1./YM)
204 ELSE
205 GAMMAR=PI/2.
206 END IF
207 IF (GAMMAL.LT.0.) GAMMAL=GAMMAL+PI
208 IF (GAMMAR.LT.0.) GAMMAR=GAMMAR+PI
209 THX=SIGN(1.,XM)
210 THY=SIGN(1.,YM)
211 AMW2SS=THX*THY*(COS(GAMMAR)*(MU2*COS(GAMMAL)+G*VP*SIN(GAMMAL))
212 $-SIN(GAMMAR)*(-G*V*COS(GAMMAL)-TWOM1*SIN(GAMMAL)))
213 AMW1SS=SIN(GAMMAR)*(MU2*SIN(GAMMAL)-G*VP*COS(GAMMAL))
214 $+COS(GAMMAR)*(-G*V*SIN(GAMMAL)+TWOM1*COS(GAMMAL))
215C IMPLEMENT INO MASS SPLITTING FOR AMSB MODELS
216 AM2=ABS(XM2)
217 XLAM=LOG(MU2**2)
218 MW1=ABS(AMW1SS)
219 DELCHI=G**2*MW1/8./PI**2*(2*CS2THW*REAL8(SSB0(MW1**2,MW1,AMZ))+
220 $2*SN2THW*REAL8(SSB0(MW1**2,MW1,0.))-2*REAL8(SSB0(MW1**2,MW1,AMW))
221 $-CS2THW*REAL8(SSB1(MW1**2,MW1,AMZ))-SN2THW*
222 $REAL8(SSB1(MW1**2,MW1,0.))+REAL8(SSB1(MW1**2,MW1,AMW)))
223 AMW1SS=AMW1SS+SIGN(1.,AMW1SS)*DELCHI
224 MW1=ABS(AMW1SS)
225 MW2=ABS(AMW2SS)
226C
227C Check validity of parameters
228C
229 IF (IMODEL.EQ.1.OR.IMODEL.EQ.7) THEN
230 IF(MW1.LE.ABS(AMZ1SS)) IALLOW=1
231 IF(AMT1SS.LE.ABS(AMZ1SS)) IALLOW=1
232 IF(AMB1SS.LE.ABS(AMZ1SS)) IALLOW=1
233 IF(AML1SS.LE.ABS(AMZ1SS)) IALLOW=1
234 END IF
235C IF(IALLOW.NE.0) RETURN
236C
237C Higgs mass matrix
238C
239 IF (ILOOP.EQ.1) THEN
240 CALL SSMHN(MHLNEG)
241 CALL SSMHC(MHCNEG)
242 END IF
243C
244 RETURN
245 END