]>
Commit | Line | Data |
---|---|---|
0795afa3 | 1 | #include "isajet/pilot.h" |
2 | LOGICAL FUNCTION LOGTHW(IERR) | |
3 | C | |
4 | C SET AND CHECK THETA LIMITS FOR W(Z0) | |
5 | C | |
6 | #include "isajet/itapes.inc" | |
7 | #include "isajet/jetlim.inc" | |
8 | #include "isajet/primar.inc" | |
9 | #include "isajet/jetpar.inc" | |
10 | #include "isajet/const.inc" | |
11 | #include "isajet/dylim.inc" | |
12 | #include "isajet/keys.inc" | |
13 | #include "isajet/q1q2.inc" | |
14 | DATA UNDEF/-.9E9/ | |
15 | C | |
16 | C INVERSE HYPERBOLIC COSINE FUNCTION | |
17 | ACOSH(X)=ALOG(X+SQRT(X**2-1.0)) | |
18 | C INVERSE HYPERBOLIC SINE FUNCTION | |
19 | ASINH(X)=ALOG(X+SQRT(X**2+1.0)) | |
20 | C | |
21 | HALFPI=PI/2. | |
22 | LOGTHW=.TRUE. | |
23 | C | |
24 | IF(THWMIN.LT.UNDEF.AND.THWMAX.LT.UNDEF) THEN | |
25 | THWMIN=2.*ATAN(EXP(-YWMAX)) | |
26 | THWMAX=2.*ATAN(EXP(-YWMIN)) | |
27 | ELSEIF(THWMIN.GT.UNDEF) THEN | |
28 | IF(THWMAX.GT.UNDEF) THEN | |
29 | LOGTHW=.FALSE. | |
30 | CALL LOGERR(113,1,IERR) | |
31 | ELSE | |
32 | TAMIN=TAN(THWMIN) | |
33 | TAMAX=TAN(THWMAX) | |
34 | IF(THWMIN.LT.HALFPI) | |
35 | 1 YWMX=ASINH(QTMAX/SQRT(QTMAX**2+QMIN**2)/TAMIN) | |
36 | IF(THWMIN.GE.HALFPI) | |
37 | 1 YWMX=ASINH(QTMIN/SQRT(QTMIN**2+QMAX**2)/TAMIN) | |
38 | IF(THWMAX.GT.HALFPI) | |
39 | 1 YWMN=ASINH(QTMAX/SQRT(QTMAX**2+QMIN**2)/TAMAX) | |
40 | IF(THWMAX.LT.HALFPI) | |
41 | 1 YWMN=ASINH(QTMIN/SQRT(QTMIN**2+QMAX**2)/TAMAX) | |
42 | IF(YWMIN.LT.YWMN) YWMIN=YWMN | |
43 | IF(YWMAX.GT.YWMX) YWMAX=YWMX | |
44 | IF(FIXYW.AND.(YW.LT.YWMIN.OR.YW.GT.YWMAX)) THEN | |
45 | CALL LOGERR(102,1,IERR) | |
46 | LOGTHW=.FALSE. | |
47 | ENDIF | |
48 | ENDIF | |
49 | ENDIF | |
50 | C | |
51 | IF(YWMIN.LT.0) THWMAX=ATAN2(QTMIN,SQRT(QTMIN**2+QMAX**2)* | |
52 | 1 SINH(YWMIN)) | |
53 | IF(YWMIN.GE.0) THWMAX=ATAN2(QTMAX,SQRT(QTMAX**2+QMIN**2)* | |
54 | 1 SINH(YWMIN)) | |
55 | IF(YWMAX.GE.0) THWMIN=ATAN2(QTMIN,SQRT(QTMIN**2+QMAX**2)* | |
56 | U SINH(YWMAX)) | |
57 | IF(YWMAX.LT.0) THWMIN=ATAN2(QTMAX,SQRT(QTMAX**2+QMIN**2)* | |
58 | 1 SINH(YWMAX)) | |
59 | C | |
60 | RETURN | |
61 | END |