1 | subroutine paramind
2 | ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
3 | c Ce programme permet la correspondance des
4 | c - index de bandes
5 | c - index des donnees k et dinv de bandes
6 | c (car pour les bandes transparentes il n'y a pas de valeurs)
7 | c AVERTISSEMENT !!!: il est construit sur le programme fini
8 | c de Taine et Soufiani
9 | c On a rajoute une boucle sur toutes les bandes.
10 | C*******************************************************************
11 | C *
12 | C THIS SUBROUTINE SEARCHS THE PARAMETER INDEXES *
13 | C CORRESPONDING THE WAVE NUMBER 'WVNB' *
14 | C *
15 | C*******************************************************************
16 |
17 |
18 |
19 | c SUBROUTINE FINDI
20 | c declarations
21 | implicit none
22 | c IMPLICIT DOUBLE PRECISION (A-H,O-Z)
23 | include 'propradia.inc'
24 | c LOGICAL LICO,LICO2,LIH2O
25 | c COMMON /LINDX/LICO,LICO2,LIH2O
26 | c COMMON /INDEX/ICO,ICO2,IH2O
27 | c COMMON /PLANK/C1,C2
28 | c COMMON /RSPC/WVNB,DWVNB
29 | integer i
30 | double precision WVNB
31 |
32 |
33 | ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
34 | C CALCULATION OF PLANCK LAW PARAMETERS
35 | C
36 | c C1=(0.11909E-7)*WVNB**3*DWVNB
37 | c C2=1.4388*WVNB
38 |
39 |
40 |
41 |
42 | c boucle rajoutee pour parcourir les bandes
43 | do i=1,nbande
44 | WVNB = eta(i)
45 |
46 |
47 |
48 | C LOOKING FOR THE INDEXES
49 | IF(WVNB.LT.450.0.OR.WVNB.GT.1200) GO TO 10
50 | ICO2(i)=INT((WVNB-450.)/25.)+1
51 | GO TO 14
52 | 10 IF(WVNB.LT.1950.0.OR.WVNB.GT.2450.) GO TO 11
53 | ICO2(i)=INT((WVNB-1950.)/25.)+32
54 | GO TO 14
55 | 11 IF(WVNB.LT.3300.0.OR.WVNB.GT.3800.) GO TO 12
56 | ICO2(i)=INT((WVNB-3300.)/25.)+53
57 | GO TO 14
58 | 12 IF(WVNB.LT.4700.0.OR.WVNB.GT.5250.) GO TO 13
59 | ICO2(i)=INT((WVNB-4700.)/25.)+74
60 | GO TO 14
61 | 13 ICO2(i)=-9
62 | 14 CONTINUE
63 | IF(WVNB.GE.150.AND.WVNB.LE.9300.) THEN
64 | IH2O(i)=INT((WVNB-150.)/25.)+1
65 | ELSE
66 | IH2O(i)=-9
67 | ENDIF
68 | IF(WVNB.LT.1750.0.OR.WVNB.GT.2325.) GO TO 19
69 | ICO(i)=INT((WVNB-1750.)/25.)+1
70 | GO TO 21
71 | 19 IF(WVNB.LT.3775.0.OR.WVNB.GT.4350.) GO TO 20
72 | ICO(i)=INT((WVNB-3775.)/25.)+25
73 | GO TO 21
74 | 20 ICO(i)=-9
75 | 21 CONTINUE
76 | LICO(i)=ICO(i).GT.0
77 | LICO2(i)=ICO2(i).GT.0
78 | LIH2O(i)=IH2O(i).GT.0
79 |
80 |
81 |
82 |
83 | c fin de la boucle rajoute
84 | enddo
85 |
86 | RETURN
87 | END
paramind.f could be called by: