]>
Commit | Line | Data |
---|---|---|
0795afa3 | 1 | #include "isajet/pilot.h" |
2 | SUBROUTINE SETHSS | |
3 | C | |
4 | C Set the MSSM Higgs parameters in /HCON/. | |
5 | C HMASS = Higgs mass for HTYPE | |
6 | C HGAM = Higgs width | |
7 | C HGAMSS = Higgs partial widths. Note HGAMSS is not | |
8 | C necessarily diagonal for SUSY decays. | |
9 | C ZSTARS = minimum allowed mass for Z* | |
10 | C | |
11 | C Note LISTSS(78) => W+, LISTSS(79) => W-, LISTSS(80) => Z0 | |
12 | C | |
13 | #if defined(CERNLIB_IMPNONE) | |
14 | IMPLICIT NONE | |
15 | #endif | |
16 | #include "isajet/itapes.inc" | |
17 | #include "isajet/hcon.inc" | |
18 | #include "isajet/listss.inc" | |
19 | #include "isajet/q1q2.inc" | |
20 | #include "isajet/ssmode.inc" | |
21 | #include "isajet/sstype.inc" | |
22 | #include "isajet/wcon.inc" | |
23 | C | |
24 | REAL AMASS | |
25 | REAL AM12 | |
26 | INTEGER I,J,N,IQ1,IQ2,IW,K | |
27 | INTEGER LISTJ(25),LISTW(4) | |
28 | C | |
29 | DATA LISTJ/9,1,-1,2,-2,3,-3,4,-4,5,-5,6,-6, | |
30 | $11,-11,12,-12,13,-13,14,-14,15,-15,16,-16/ | |
31 | DATA LISTW/10,80,-80,90/ | |
32 | C | |
33 | C Initialize | |
34 | C | |
35 | IF(IHTYPE.EQ.0) THEN | |
36 | WRITE(ITLIS,*) ' YOU MUST SELECT AN HTYPE FOR SUSY HIGGS' | |
37 | WRITE(ITLIS,*) ' JOB TERMINATED' | |
38 | STOP99 | |
39 | ENDIF | |
40 | HMASS=AMASS(IHTYPE) | |
41 | HGAM=0. | |
42 | DO 100 I=1,85 | |
43 | DO 110 J=1,85 | |
44 | HGAMSS(I,J)=0 | |
45 | 110 CONTINUE | |
46 | 100 CONTINUE | |
47 | C | |
48 | C Extract widths from SSMODE common block | |
49 | C Note the only 3-body modes are Zff or Wff | |
50 | C These are added to the ZZ and WW entries in HCONSS, | |
51 | C and the Z* or W* decay is generated later, as for SM Higgs | |
52 | C | |
53 | DO 200 N=1,NSSMOD | |
54 | IF(ISSMOD(N).NE.IHTYPE) GO TO 200 | |
55 | HGAM=HGAM+GSSMOD(N) | |
56 | IF(JSSMOD(3,N).NE.0) THEN | |
57 | C 3-body modes | |
58 | IF(IABS(JSSMOD(1,N)).EQ.80) THEN | |
59 | HGAMSS(78,79)=HGAMSS(78,79)+0.5*GSSMOD(N) | |
60 | HGAMSS(79,78)=HGAMSS(79,78)+0.5*GSSMOD(N) | |
61 | ELSEIF(JSSMOD(1,N).EQ.90) THEN | |
62 | HGAMSS(80,80)=HGAMSS(80,80)+GSSMOD(N) | |
63 | ELSE | |
64 | WRITE(ITLIS,1000) ISSMOD(N),(JSSMOD(K,N),K=1,5) | |
65 | 1000 FORMAT(' SETHSS: UNEXPECTED MODE ',I8,' --> ',5I8) | |
66 | STOP 99 | |
67 | ENDIF | |
68 | GO TO 200 | |
69 | ELSE | |
70 | C 2-body modes | |
71 | DO 210 I=1,85 | |
72 | IF(JSSMOD(1,N).NE.LISTSS(I)) GO TO 210 | |
73 | DO 220 J=1,85 | |
74 | IF(JSSMOD(2,N).NE.LISTSS(J)) GO TO 220 | |
75 | HGAMSS(I,J)=HGAMSS(I,J)+.5*GSSMOD(N) | |
76 | HGAMSS(J,I)=HGAMSS(J,I)+.5*GSSMOD(N) | |
77 | GO TO 200 | |
78 | 220 CONTINUE | |
79 | 210 CONTINUE | |
80 | ENDIF | |
81 | WRITE(ITLIS,1000) ISSMOD(N),(JSSMOD(K,N),K=1,5) | |
82 | STOP99 | |
83 | 200 CONTINUE | |
84 | C | |
85 | C W* and Z* mass limits | |
86 | C | |
87 | DO 300 I=1,2 | |
88 | ZSTARS(1,I)=0. | |
89 | DO 310 IW=2,4 | |
90 | ZSTARS(IW,I)=AMASS(LISTW(IW)) | |
91 | DO 320 IQ1=2,25 | |
92 | IQ2=MATCH(IQ1,IW) | |
93 | IF(IQ2.EQ.0) GO TO 320 | |
94 | IF(GOWW(IQ1,I).AND.GOWW(IQ2,I)) THEN | |
95 | AM12=AMASS(LISTJ(IQ1))+AMASS(LISTJ(IQ2))+1.0 | |
96 | ZSTARS(IW,I)=MIN(ZSTARS(IW,I),AM12) | |
97 | ENDIF | |
98 | 320 CONTINUE | |
99 | 310 CONTINUE | |
100 | 300 CONTINUE | |
101 | RETURN | |
102 | END |