-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cog_SCAT.f
executable file
·106 lines (86 loc) · 2.74 KB
/
Cog_SCAT.f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
subroutine cog_scat
c******************************************************************************
c This routine produces sets of curves-of-growth
c******************************************************************************
implicit real*8 (a-h,o-z)
include 'Atmos.com'
include 'Linex.com'
include 'Pstuff.com'
c*****examine the parameter file
call params
c*****open the files for standard output and summary curves-of-growth
nf1out = 20
lscreen = 4
array = 'STANDARD OUTPUT'
nchars = 15
call infile ('output ',nf1out,'formatted ',0,nchars,
. f1out,lscreen)
nf2out = 21
lscreen = lscreen + 2
array = 'SUMMARY C-O-G OUTPUT'
nchars = 20
call infile ('output ',nf2out,'formatted ',0,nchars,
. f2out,lscreen)
nf5out = 26
lscreen = lscreen + 2
array = 'POSTSCRIPT PLOT OUTPUT'
nchars = 22
call infile ('output ',nf5out,'formatted ',0,nchars,
. f5out,lscreen)
c*****open and read the model atmosphere
array = 'THE MODEL ATMOSPHERE'
nchars = 20
102 nfmodel = 30
lscreen = lscreen + 2
call infile ('input ',nfmodel,'formatted ',0,nchars,
. fmodel,lscreen)
call inmodel
c*****open and read the line list file; get ready for the line calculations
nflines = 31
lscreen = lscreen + 2
array = 'THE LINE LIST'
nchars = 13
call infile ('input ',nflines,'formatted ',0,nchars,
. flines,lscreen)
isynth = 1
101 call inlines (1)
call eqlib
call nearly (1)
c*****define the range of lines (the whole list, in this case)
mode = 1
call linlimit
if (lim1line .lt. 0) then
call finish (0)
return
endif
c*****do the curves of growth, making plots if desired
do lim1=lim1line,lim2line
lim2 = lim1
call curve_scat
call pltcog
if (choice .eq. 'm') then
close (unit=nfmodel)
close (unit=nflines)
rewind nf1out
rewind nf2out
rewind nf5out
array = 'THE NEW MODEL ATMOSPHERE'
nchars = 24
fmodel = 'no_filename_given'
go to 102
endif
if (choice .eq. 'v') go to 101
array = 'DO ANOTHER CURVE-OF-GROWTH ([y]/n)? '
nchars = 36
lscreen = 16
call getasci (nchars,lscreen)
choice = chinfo(1:1)
if (choice .eq. 'n') then
call finish (0)
return
endif
enddo
c****end the computations
call finish (0)
return
end