1 | C
2 | C
3 | C*******************************************************************
4 | C *
5 | C THIS SUBROUTINE SEARCHS THE PARAMETER INDEXES *
6 | C CORRESPONDING THE WAVE NUMBER 'WVNB' *
7 | C *
8 | C*******************************************************************
9 | C
10 | SUBROUTINE FINDI
11 | IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12 | LOGICAL LICO,LICO2,LIH2O
13 | COMMON /LINDX/LICO,LICO2,LIH2O
14 | COMMON /INDEX/ICO,ICO2,IH2O
15 | COMMON /PLANK/C1,C2
16 | COMMON /RSPC/WVNB,DWVNB
17 | C
18 | C CALCULATION OF PLANCK LAW PARAMETERS
19 | C
20 | C1=(0.11909E-7)*WVNB**3*DWVNB
21 | C2=1.4388*WVNB
22 | C
23 | C LOOKING FOR THE INDEXES
24 | C
25 | IF(WVNB.LT.450.0.OR.WVNB.GT.1200) GO TO 10
26 | ICO2=INT((WVNB-450.)/25.)+1
27 | GO TO 14
28 | 10 IF(WVNB.LT.1950.0.OR.WVNB.GT.2450.) GO TO 11
29 | ICO2=INT((WVNB-1950.)/25.)+32
30 | GO TO 14
31 | 11 IF(WVNB.LT.3300.0.OR.WVNB.GT.3800.) GO TO 12
32 | ICO2=INT((WVNB-3300.)/25.)+53
33 | GO TO 14
34 | 12 IF(WVNB.LT.4700.0.OR.WVNB.GT.5250.) GO TO 13
35 | ICO2=INT((WVNB-4700.)/25.)+74
36 | GO TO 14
37 | 13 ICO2=-9
38 | 14 CONTINUE
39 | IF(WVNB.GE.150.AND.WVNB.LE.9300.) THEN
40 | IH2O=INT((WVNB-150.)/25.)+1
41 | ELSE
42 | IH2O=-9
43 | ENDIF
44 | IF(WVNB.LT.1750.0.OR.WVNB.GT.2325.) GO TO 19
45 | ICO=INT((WVNB-1750.)/25.)+1
46 | GO TO 21
47 | 19 IF(WVNB.LT.3775.0.OR.WVNB.GT.4350.) GO TO 20
48 | ICO=INT((WVNB-3775.)/25.)+25
49 | GO TO 21
50 | 20 ICO=-9
51 | 21 CONTINUE
52 | LICO=ICO.GT.0
53 | LICO2=ICO2.GT.0
54 | LIH2O=IH2O.GT.0
55 | RETURN
56 | END
tfindi.f could be called by:
old.f | [debug/oldspectre] | - 98 |