ADAS Subroutine bnd404a
SUBROUTINE BND404A(ITYPE ,
& NUTMAX , NUDMAX , NUZMAX , NUMMAX ,
& MAXT , MAXD ,
& IZL , IZH , IZ0 ,
& TEK , DENSA ,
& METFRC ,
& NGRD ,
& IST2 , IST5 , IWRITE , DATE,
& DSNIN)
C
C----------------------------------------------------------------------
C
C ************ FORTRAN 77 SUBROUTINE BND404A ***************************
C
C VERSION 1.0
C
C PURPOSE:
C TO FETCH DATA FROM RESOLVED ADF10 FILES, SPLINE THEM
C ONTO THE REQUESTED TEMPERATURE/DENSITY GRID, BUNDLE
C THEM INTO UNRESOLVED DATA USING THE INPUT METASTABLE
C FRACTIONS, AND WRITE THE RESULT TO ADF11 FILES.
C
C CALLING ROUTINE / PROGRAM : LH404RU / ADAS404
C
C DATA:
C
C THE SOURCE DATA IS CONTAINED AS MEMBERS OF PARTITIONED
C DATA SETS AS FOLLOWS:
C
C 1. JETUID.ACD<YR>.DATA
C 2. JETUID.SCD<YR>.DATA
C 3. JETUID.CCD<YR>.DATA
C 4. JETUID.PRB<YR>.DATA
C 5. JETUID.PRC<YR>.DATA
C
C WHERE <YR> DENOTES TWO INTEGERS FOR THE YEAR SELECTED.
C
C SUBROUTINE:
C
C INPUT : (I*4) ITYPE - TYPE OF ADF10 DATA BEING READ (SEE ABOVE)
C INPUT : (I*4) NUTMAX - OUTPUT ELEMENT MASTER FILE
C MAXIMUM NUMBER OF TEMPERATURES
C INPUT : (I*4) NUDMAX - OUTPUT ELEMENT MASTER FILE
C MAXIMUM NUMBER OF DENSITIES
C INPUT : (I*4) NUZMAX - OUTPUT ELEMENT MASTER FILE
C MAXIMUM NUMBER OF CHARGE STATES
C INPUT : (I*4) NUMMAX - OUTPUT ELEMENT MASTER FILE
C MAXIMUM NUMBER OF METASTABLES
C INPUT : (I*4) MAXT - OUTPUT ELEMENT MASTER FILE
C ACTUAL NUMBER OF TEMPERATURES
C INPUT : (I*4) MAXD - OUTPUT ELEMENT MASTER FILE
C ACTUAL NUMBER OF DENSITIES
C INPUT : (I*4) IZL - LOWEST ION CHARGE TO READ
C INPUT : (I*4) IZH - HIGHEST ION CHARGE TO READ
C INPUT : (I*4) IZ0 - NUCLEAR CHARGE TO READ
C INPUT : (R*8) DENSA()- OUTPUT ELEMENT MASTER FILE
C SET OF MAXD DENSITIES
C INPUT : (R*8) TEK() - OUTPUT ELEMENT MASTER FILE
C SET OF MAXT TEMPERATURES
C INPUT : (R*8) METFRC(,,,) - METASTABLE POPULATION FRACTIONS,
C SPLINED ONTO THE OUTPUT TEMPERATURES
C AND DENSITIES
C 1ST DIMENSION - DENSITY INDEX
C 2ND DIMENSION - TEMPERATURE INDEX
C 3RD DIMENSION - CHARGE STATE INDEX
C 4TH DIMENSION - METASTABLE INDEX
C INPUT : (I*4) NGRD() - NUMBER OF GROUND STATES OF THE FIRST
C 50 ISOELECTRONIC SEQUENCES
C INPUT : (I*4) IST2 - UNIT NUMBER FOR OUTPUT INFORMATION
C AND ERROR MESSAGES
C INPUT : (I*4) IST5 - UNIT NUMBER FOR READING MASTER CONDENSED
C FILE
C INPUT : (I*4) IWRITE - UNIT NUMBER FOR WRITING ADF11 DATA
C INPUT : (C*8) DATE - CURRENT DATE
C
C PARAMETER : (I*4) NTDMAX - SIZE OF LOCAL WORKING SPACE
C (MUST BE GREATER THAN NUTMAX & NUDMAX)
C PARAMETER : (I*4) NDZ1V - MASTER CONDENSED FILE
C MAXIMUM NUMBER OF CHARGE STATES
C PARAMETER : (I*4) NDTIN - MASTER CONDENSED FILE
C MAXIMUM NUMBER OF TEMPERATURES
C PARAMETER : (I*4) NDDEN - MASTER CONDENSED FILE
C MAXIMUM NUMBER OF DENSITIES
C
C : (R*8) DENSR() - INPUT MASTER CONDENSED FILE
C SET OF IDE REDUCED DENSITIES
C : (R*8) TR() - INPUT MASTER CONDENSED FILE
C SET OF ITE REDUCED TEMPERATURES
C : (R*8) ZIPT() - INPUT MASTER CONDENSED FILE
C SET OF IZE RECOMBINING ION CHARGES
C : (R*8) AIPT(,,) - INPUT MASTER CONDENSED FILE
C RELEVANT RATE COEFFICIENTS
C 1ST DIMENSION - DENSITY INDEX
C 2ND DIMENSION - TEMPERATURE INDEX
C 3RD DIMENSION - CHARGE STATE INDEX
C : (R*8) EIA() - INPUT MASTER CONDENSED FILE
C SET OF IONISATION POTENTIALS (CM-1)
C
C : (R*8) ATTY(,) - WORK SPACE FOR INTERPOLATION
C - STORES LOG10(INTERPOLATED VALUES)
C 1ST DIMENSION - TEMPERATURE
C 2ND DIMENSION - DENSITY
C : (R*8) ARRAY(,) - STORES LOG10(INTERPOLATED VALUES)
C 1ST DIMENSION - TEMPERATURE
C 2ND DIMENSION - DENSITY
C : (R*8) WORK(,) - SUM OF INTERPOLATED VALUES OVER
C METASTABLE STATES
C 1ST DIMENSION - TEMPERATURE
C 2ND DIMENSION - DENSITY
C
C ROUTINES:
C ---------
C XXOPEN -
C XXTERM -
C XXSLEN -
C XXIN17 - FETCH DATA FROM MASTER CONDENSED FILE
C D4SPLN - INTERPOLATE CONDENSED MASTER FILE
C UPDATED VERSION OF D1SPLN
C
C---------------------------------------------
C AUTHOR: LORNE D. HORTON
C ROOM K1/1/58, JET JOINT UNDERTAKING
C
C DATE: 23RD FEBRUARY 1996
C----------------------------------------------------------------------
C UNIX-IDL PORT:
C
C VERSION: 1.1 DATE: 11-11-96
C MODIFIED: WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC)
C - FIRST CONVERTED
C VERSION: 1.2 DATE: 20-10-97
C MODIFIED: LORNE HORTON (JET)
C - INCREASED SPACE FOR FILE NAME DIAGNOSTICS
C - REMOVED ISWIT VARIABLES AND PASSED ITYPE TO
C D4SPLN INSTEAD
C - ALLOWED LSWIT TO BE TRUE FOR ALL SCD'S, INCLUDING
C FROM METASTABLE STATES
C
C VERSION: 1.3 DATE: 13-10-99
C MODIFIED: Martin O'Mullane
C - PRB files wrote incorrect information in IPRT
C and JPRT line in adf11 file.
C----------------------------------------------------------------------
C
C
CHARACTER*8 DATE
CHARACTER*80 DSNIN(50,10)
INTEGER IST2, IST5, ITYPE, IWRITE
INTEGER IZ0, IZH, IZL, MAXD
INTEGER MAXT, NGRD(50), NUDMAX, NUMMAX
INTEGER NUTMAX, NUZMAX
REAL*8 DENSA(NUDMAX)
REAL*8 METFRC(NUDMAX,NUTMAX,NUZMAX,NUMMAX)
REAL*8 TEK(NUTMAX)