ADAS Subroutine h9gett
subroutine h9gett( iunit , ndlev , & nv , tva & ) c----------------------------------------------------------------------- c c ****************** fortran77 subroutine: h9gett ********************* c c purpose: to fetch temperature set from input adf04 type 3 data set. c c calling program: adas809 c c data: c the 'real' data in the file is represented in an abbreviated c form which omits the "d" or "e" exponent specifier. c e.g. 1.23d-06 or 1.23e-06 is represented as 1.23-06 c 6.75d+07 or 6.75e+07 is represented as 6.75+07 c c therefore the form of each 'real' number in the data set is: c n.nn+nn or n.nn-nn c c the units used in the data file are taken as follows: c c ionisation potential: wave number (cm-1) c index level energies: wave number (cm-1) c temperatures : kelvin c a-values : sec-1 c gamma-values : c rate coefft. : cm3 sec-1 c c c subroutine: c c input : (i*4) iunit = unit to which input file is allocated c input : (i*4) ndlev = maximum number of levels that can be read c c output: (i*4) nv = input data file: number of gamma/temperature c pairs for a given transition. c output: (r*8) scef() = input data file: electron temperatures (k) c c (i*4) nvmax = parameter = max. number of temperatures c that can be read in. c c (i*4) i4unit = function (see routine section below) c (i*4) iqs = x-sect data format selector c note: iqs=3 or 4 only allowed in this program c (i*4) i = general use. c (i*4) j = general use. c (i*4) iline = energy level index for current line c (i*4) itpow() = temperatures - exponent c note: mantissa initially kept in 'scef()' c c (r*4) zf = should be equivalent to 'iz1' c c (c*80) cline = current energy level index parameter line c (c*500)buffer = general string buffer storage c (c*3) citpow()= used to parse values to itpow() c (c*5) cscef() = used to parse values to scef() c c (l*4) ldata = identifies whether the end of an input c section in the data set has been located. c (.true. => end of section reached) c (l*4) ltied() = .true. => specified level tied c = .false. => specified level is untied c dimension => level index c c routines: c routine source brief description c ------------------------------------------------------------- c i4unit adas fetch unit number for output of messages c c c routines: none c c author: Hugh Summers, University of strathclyde c ja7.08 c ext. 4196 c c date: 13/08/01 c c update: c c unix-idl port: c c version: 1.1 date: 14-06-013 c modified: Hugh Summers c - first version c c----------------------------------------------------------------------- c----------------------------------------------------------------------- INTEGER IUNIT, NDLEV, NV REAL*8 TVA(NVMAX)