]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/isasusy/ssmass.F
First commit.
[u/mrichter/AliRoot.git] / ISAJET / isasusy / ssmass.F
1 #include "isajet/pilot.h"
2       SUBROUTINE SSMASS(XM1,XM2,IALLOW,ILOOP,MHLNEG,MHCNEG,IMODEL)
3 C-----------------------------------------------------------------------
4 C
5 C          Diagonalize neutralino, chargino, and Higgs mass matrices
6 C          and save results in /SSPAR/.
7 C
8 C          If XM1, XM2 < 1E19, use them for the U(1) and SU(2) mass
9 C          terms. Otherwise calculate them from AMGLSS and unification.
10 C
11 C          Return IALLOW = 1 if Z1SS is not LSP
12 C                 IALLOW = 0 otherwise
13 C
14 C-----------------------------------------------------------------------
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"
22 C
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
37 C
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
45 C
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))
52 C
53 C          Compute m(tau), m(b) at z scale using qcd, qed
54 C
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))
65 C
66 C     Light/heavy stop states and mixing angle
67 C
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
85 C
86 C     Light/heavy sbottom states and mixing angle
87 C
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)
101 C
102 C     Light/heavy stau states and mixing angle
103 C
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)
108 C     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)
118 C
119 C     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
124 C
125 C          Use either explicit values or scaling to determine SU(2)
126 C          and U(1) mass terms. NOTE SIGN CONVENTION!
127 C
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
135 C
136 C          Neutralino mass matrix
137 C
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
154 C
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
160 C
161 C       Sort eigenvectors and eigenvalues according to masses
162 C
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
173 12          CONTINUE
174           END IF
175 11      CONTINUE
176 10    CONTINUE
177 C
178       AMZ1SS=WR(1)
179       AMZ2SS=WR(2)
180       AMZ3SS=WR(3)
181       AMZ4SS=WR(4)
182 C
183 C          Chargino mass matrix
184 C
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))
215 C     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)
226 C
227 C          Check validity of parameters
228 C
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
235 C      IF(IALLOW.NE.0) RETURN
236 C
237 C          Higgs mass matrix
238 C
239       IF (ILOOP.EQ.1) THEN
240         CALL SSMHN(MHLNEG)
241         CALL SSMHC(MHCNEG)
242       END IF
243 C
244       RETURN
245       END