]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ISAJET/isasusy/sugmas.F
Separate import of standard macros into a special function so that
[u/mrichter/AliRoot.git] / ISAJET / isasusy / sugmas.F
CommitLineData
0795afa3 1#include "isajet/pilot.h"
2C---------------------------------------------------------------
3 SUBROUTINE SUGMAS(G0,ILOOP,IMODEL)
4C---------------------------------------------------------------
5C
6C Compute tree level sparticle masses; output to MSS, XISAIN
7C
8#if defined(CERNLIB_IMPNONE)
9 IMPLICIT NONE
10#endif
11#include "isajet/sslun.inc"
12#include "isajet/sspar.inc"
13#include "isajet/sssm.inc"
14#include "isajet/sugpas.inc"
15#include "isajet/sugxin.inc"
16#include "isajet/sugmg.inc"
17 REAL MSB1,MSB2,MST1,MST2
18 REAL G0(29)
19 REAL SUGMFN,SUALFS,SSPOLE,MHP,MGLMGL,MHPS,
20 $RDEL,ASMGL,DELHPS,M1S,M2S,FNB,FCN,
21 $MB,FNT,MT,MW,TANB,BETA,COSB,COTB,SINB,MZ,COS2B,
22 $PI,T2S,G,ATAU,MSSS,AT,AB,BRKT,B2S,T1S,TERM,B1S,Q,
23 $MBQ,MTAMZ,MTQ,FNL,MSL1,MSL2,ASMB,MBMB,ASMT,MTMT
24 REAL AA,BB,CC,DA,DB,DC,L1,L2,EVAL1,RL1,RL2
25 DOUBLE PRECISION SSMQCD
26 INTEGER IALLOW,ILOOP,MHLNEG,MHCNEG,IMODEL
27C
28C Statement function
29C
30 SUGMFN(Q)=Q**2*(LOG(Q**2/HIGFRZ**2)-1.)
31C
32 PI=4.*ATAN(1.)
33 XW=.232
34 G=G2
35 TANB=XTANB
36 MT=AMT
37 MZ=AMZ
38 MW=AMW
39 AMTP=MT
40 BETA=ATAN(TANB)
41 COTB=1./TANB
42 SINB=SIN(BETA)
43 COSB=COS(BETA)
44 SIN2B=SIN(2*BETA)
45 COS2B=COS(2*BETA)
46 AT=G0(12)
47 AB=G0(11)
48 ATAU=G0(10)
49 ASMB=SUALFS(AMBT**2,.36,AMTP,3)
50 MBMB=AMBT*(1.-4*ASMB/3./PI)
51 MBQ=SSMQCD(DBLE(MBMB),DBLE(HIGFRZ))
52 ASMT=SUALFS(AMTP**2,.36,AMTP,3)
53 MTMT=AMTP/(1.+4*ASMT/3./PI+(16.11-1.04*(5.-6.63/AMTP))*
54 $(ASMT/PI)**2)
55 MTQ=SSMQCD(DBLE(MTMT),DBLE(HIGFRZ))
56 MTAMZ=FTAMZ*COSB*VEV
57C
58C Compute some masses from RGE solution to prepare for SSMASS,
59C which computes the rest.
60C
61 MSSS=G0(19)+AMUP**2+(.5-2*XW/3.)*MZ**2*COS2B
62 IF (MSSS.LE.0.) THEN
63 NOGOOD=1
64 GO TO 100
65 END IF
66C Squark and slepton masses
67 MSS(2)=SQRT(MSSS)
68 MSS(3)=SQRT(G0(18)+AMUP**2+2./3.*XW*MZ**2*COS2B)
69 MSS(4)=SQRT(G0(19)+AMDN**2+(-.5+XW/3.)*MZ**2*COS2B)
70 MSS(5)=SQRT(G0(17)+AMDN**2-1./3.*XW*MZ**2*COS2B)
71 MSS(6)=SQRT(G0(19)+AMST**2+(-.5+XW/3.)*MZ**2*COS2B)
72 MSS(7)=SQRT(G0(17)+AMST**2-1./3.*XW*MZ**2*COS2B)
73 MSS(8)=SQRT(G0(19)+AMCH**2+(.5-2*XW/3.)*MZ**2*COS2B)
74 MSS(9)=SQRT(G0(18)+AMCH**2+2./3.*XW*MZ**2*COS2B)
75 BRKT=(.5*(G0(24)-G0(22))-COS2B*(4*MW**2-MZ**2)/12.)**2+
76 $ MBQ**2*(AB-MU*TANB)**2
77 TERM=.5*(G0(24)+G0(22))+MBQ**2-MZ**2*COS2B/4.
78 B1S=TERM-SQRT(BRKT)
79 B2S=TERM+SQRT(BRKT)
80 MSS(10)=SQRT(MAX(0.,B1S))
81 MSS(11)=SQRT(MAX(0.,B2S))
82 BRKT=(.5*(G0(24)-G0(23))+COS2B*(8*MW**2-5*MZ**2)/12.)**2+
83 $ MTQ**2*(AT-MU*COTB)**2
84 TERM=.5*(G0(24)+G0(23))+MTQ**2+MZ**2*COS2B/4.
85 T1S=TERM-SQRT(BRKT)
86 IF (T1S.LE.0..OR.B1S.LE.0.) THEN
87 NOGOOD=1
88 GO TO 100
89 END IF
90 T2S=TERM+SQRT(BRKT)
91 MSS(12)=SQRT(MAX(0.,T1S))
92 MSS(13)=SQRT(MAX(0.,T2S))
93 MSSS=G0(16)+.5*MZ**2*COS2B
94 IF (MSSS.LE.0.) THEN
95 NOGOOD=1
96 GO TO 100
97 END IF
98 MSS(14)=SQRT(MSSS)
99 MSS(15)=MSS(14)
100 MSSS=G0(21)+.5*MZ**2*COS2B
101 IF (MSSS.LE.0.) THEN
102 NOGOOD=1
103 GO TO 100
104 END IF
105 MSS(16)=SQRT(MSSS)
106 MSS(17)=SQRT(G0(16)+AME**2-.5*(2*MW**2-MZ**2)*COS2B)
107 MSS(18)=SQRT(G0(15)+AME**2+(MW**2-MZ**2)*COS2B)
108 MSS(19)=SQRT(G0(16)+AMMU**2-.5*(2*MW**2-MZ**2)*COS2B)
109 MSS(20)=SQRT(G0(15)+AMMU**2+(MW**2-MZ**2)*COS2B)
110 BRKT=(.5*(G0(21)-G0(20))-COS2B*(4*MW**2-3*MZ**2)/4.)**2+
111 $ MTAMZ**2*(ATAU-MU*TANB)**2
112 TERM=.5*(G0(21)+G0(20))+MTAMZ**2-MZ**2*COS2B/4.
113 T1S=TERM-SQRT(BRKT)
114 IF (T1S.LE.0.) THEN
115 NOGOOD=1
116 GO TO 100
117 END IF
118 T2S=TERM+SQRT(BRKT)
119 MSS(21)=SQRT(MAX(0.,T1S))
120 MSS(22)=SQRT(MAX(0.,T2S))
121C A0 mass
122 M1S=MU**2+G0(13)
123 M2S=MU**2+G0(14)
124 MSB1=MSS(10)
125 MSB2=MSS(11)
126 MST1=MSS(12)
127 MST2=MSS(13)
128 MSL1=MSS(21)
129 MSL2=MSS(22)
130 MB=AMBT
131 FNT=(SUGMFN(MST2)-SUGMFN(MST1))/(MST2**2-MST1**2)
132 $*AT*MTQ**2/SINB**2
133 FNB=(SUGMFN(MSB2)-SUGMFN(MSB1))/(MSB2**2-MSB1**2)
134 $*AB*MBQ**2/COSB**2
135 FNL=(SUGMFN(MSL2)-SUGMFN(MSL1))/(MSL2**2-MSL1**2)
136 $*ATAU*MTAMZ**2/COSB**2
137 FCN=FNT+FNB+FNL/3.
138 DELHPS=3*G0(2)**2*MU*(COTB+TANB)/32./PI**2/MW**2*FCN
139 RDEL=SQRT(ABS(DELHPS))
140C Tree level mhp not needed at this point so fix if negative
141 IF (ILOOP.EQ.0) THEN
142 MHPS=M1S+M2S
143 IF (MHPS.LT.0.) MHPS=0.
144 ELSE
145 MHPS=B*MU*(COTB+TANB)+DELHPS
146 IF (MHPS.LT.0.) THEN
147 NOGOOD=3
148 MHPS=AMZ**2
149 END IF
150 END IF
151 MHP=SQRT(MHPS)
152 MSS(31)=MHP
153C APPLY XERXES' TEST FOR PROPER POTENTIAL SHAPE AT THE ORIGIN
154C REMOVE THIS CONSTRAINT ON 4/7/00
155 IF (ILOOP.EQ.1) THEN
156 L1=MIN(G0(24),G0(23))
157 L2=MAX(G0(24),G0(23))
158 RL1=SQRT(L1)
159 RL2=SQRT(L2)
160 DA=3*G0(6)**2*AT**2/ABS(G0(24)-G0(23))/16./PI**2*
161 $(-SUGMFN(RL1)+SUGMFN(RL2))
162 DB=3*G0(6)**2/16./PI**2*
163 $(SUGMFN(RL1)*(1.-AT**2/ABS(G0(24)-G0(23)))+SUGMFN(RL2)*
164 $(1.+AT**2/ABS(G0(24)-G0(23))))
165 DC=-3*G0(6)**2*AT*MU/ABS(G0(24)-G0(23))/16./PI**2*
166 $(-SUGMFN(RL1)+SUGMFN(RL2))
167 AA=M1S+DA
168 BB=M2S+DB
169 CC=-B*MU+DC
170 EVAL1=((AA+BB)-SQRT((AA+BB)**2-4*(AA*BB-CC*CC)))/2.
171C IF (EVAL1.GE.0) THEN
172C NOGOOD=7
173C END IF
174 END IF
175C
176C Initialize SUSY parameters in /SSPAR/:
177C
178 AMGLSS=G0(9)
179 AMULSS=MSS(2)
180 AMURSS=MSS(3)
181 AMDLSS=MSS(4)
182 AMDRSS=MSS(5)
183 AMSLSS=MSS(6)
184 AMSRSS=MSS(7)
185 AMCLSS=MSS(8)
186 AMCRSS=MSS(9)
187 AMN1SS=MSS(16)
188 AMN2SS=MSS(16)
189 AMN3SS=MSS(16)
190 AMELSS=MSS(17)
191 AMERSS=MSS(18)
192 AMMLSS=MSS(19)
193 AMMRSS=MSS(20)
194 TWOM1=-MU
195 RV2V1=1./TANB
196 AMTLSS=SQRT(G0(24))
197 AMTRSS=SQRT(G0(23))
198 AMBLSS=SQRT(G0(24))
199 AMBRSS=SQRT(G0(22))
200 AMLLSS=SQRT(G0(21))
201 AMLRSS=SQRT(G0(20))
202 AAT=G0(12)
203 AAB=G0(11)
204 AAL=G0(10)
205 AMHA=MHP
206C
207C Use SSMASS to diagonalize neutralino and chargino mass
208C matrices and calculate Higgs masses.
209C
210 MHLNEG=0
211 MHCNEG=0
212 CALL SSMASS(G0(7),G0(8),IALLOW,ILOOP,MHLNEG,MHCNEG,IMODEL)
213 IF(MHLNEG.EQ.1.OR.MHCNEG.EQ.1) THEN
214 NOGOOD=8
215 ENDIF
216 IF(IALLOW.NE.0) THEN
217 NOGOOD=5
218 GO TO 100
219 ENDIF
220C
221C Save results also in MSS
222C
223 MSS(23)=AMZ1SS
224 MSS(24)=AMZ2SS
225 MSS(25)=AMZ3SS
226 MSS(26)=AMZ4SS
227 MSS(27)=AMW1SS
228 MSS(28)=AMW2SS
229 MSS(29)=AMHL
230 MSS(30)=AMHH
231 MSS(31)=AMHA
232 MSS(32)=AMHC
233C Gluino pole mass
234 MGLMGL=G0(9)
235 ASMGL=SUALFS(MGLMGL**2,.36,MT,3)
236 MSS(1)=SSPOLE(MGLMGL,MGLMGL**2,ASMGL)
237 AMGLSS=MSS(1)
238C
239100 RETURN
240 END