Search Site | Contact Details | FAQ

ADAS Subroutine bdxref

      SUBROUTINE  BDXREF( IUNIT  , NDLEV  , NDJLEV , NDPRT  ,
     &                    DSNSP  , DSNBD  , DSNSPO ,  
     &                    NTRM   , NPTRM  , NLVL   , NPLVL  ,
     &                    ISTRM  , IGTRM  , ISPTRM , IGPTRM ,
     &                    ISLVL  , FSLVL  , JTREF  ,
     &                    ISPLVL , FSPLVL , JTPREF ,
     &                    LSJ    , IERROR
     &                  )
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: BDXREF *********************
C
C  PURPOSE: TO FETCH DATA FROM INPUT ADF18/A23_A04 CROSS-REFERENCE FILE.
C
C  CALLING PROGRAM: ADAS213
C
C
C  SUBROUTINE:
C
C  INPUT : (I*4) IUNIT       = UNIT TO WHICH INPUT FILE IS ALLOCATED
C
C  INPUT : (I*4) NDLEV       = MAX. NO. OF TERMS THAT CAN BE READ
C  INPUT : (I*4) NDJLEV      = MAX. NO. OF LEVELS THAT CAN BE READ
C  INPUT : (I*4) NDPRT       = MAX. NO. OF PARENT STATES
C 
C  OUTPUT: (C*80) DSNSP      = INPUT ADF04 FILE NAME 
C  OUTPUT: (C*80) DSNBD      = ADF23 IONISATION DATA FILE NAME
C  OUTPUT: (C*80) DSNSP      = OUTPUT ADF04 FILE NAME
C 
C  OUTPUT: (I*4) NTRM        = NUMBER OF TERMS IN X-REF FILE.
C  OUTPUT: (I*4) NPTRM       = NUMBER OF PARENT TERMS IN X-REF FILE.
C  OUTPUT: (I*4) NLVL        = NUMBER OF LEVELS IN X-REF FILE.
C  OUTPUT: (I*4) NPLVL       = NUMBER OF PARENT LEVELS IN X-REF FILE.
C
C  OUTPUT: (I*4) ISTRM()     = SPEC. ION FILE TERM INDEX FROM X-REF
C                              1ST.DIM.: TERM COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) IGTRM()     = IONIS. FILE TERM INDEX FROM X-REF
C                              1ST.DIM.: TERM COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) ISPTRM()    = SPEC. ION FILE PRNT. TERM INDEX FROM X-REF
C                              1ST.DIM.: PRNT. TERM COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) IGPTRM()    = IONIS. FILE PRNT. TERM INDEX FROM X-REF
C                              1ST.DIM.: PRNT. TERM COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) ISLVL()     = SPEC. ION FILE LEVEL INDEX FROM X-REF
C                              1ST.DIM.: LEVEL COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) JTREF()     = SP. ION FILE TERM ASSOCIATED WITH LEVEL
C                              FROM X-REF FILE.
C                              1ST.DIM.: LEVEL COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) ISPLVL()    = SPEC. ION FILE PRNT. LEVEL INDEX FROM X-REF
C                              1ST.DIM.: PRNT. LEVEL COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) JTPREF()    = SP. ION FILE PRNT. TERM ASSOCIATED WITH 
C                              PRNT. LEVEL FROM X-REF FILE.
C                              1ST.DIM.: LEVEL COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) ISPTRM()    = SPEC. ION FILE PRNT. TERM INDEX FROM X-REF
C                              1ST.DIM.: PRNT. TERM COUNTER IN X-REF FILE 
C  OUTPUT: (I*4) IGPTRM()    = IONIS. FILE PRNT. TERM INDEX FROM X-REF
C                              1ST.DIM.: PRNT. TERM COUNTER IN X-REF FILE
C
C  OUTPUT: (R*8) FSLVL()     = FRACTIONATION OF TERM RATES AMONG LEVELS
C                              1ST.DIM.: LEVEL COUNTER IN X-REF FILE
C  OUTPUT: (R*8) FSPLVL()    = FRACTIONATION OF PRNT. TERM RATES AMONG 
C                              PRNT. LEVELS
C                              1ST.DIM.: LEVEL COUNTER IN X-REF FILE
C  OUTPUT: (L*4) LSJ         = .TRUE. => J-RESOL. INFO. IN X-REF FILE
C                              .FALSE.=> NO J-RESOL. IN X-REF FILE
C  OUTPUT: (I*4) IERROR      = 0 => X-REF FILE OK
C                              1 => FAULT IN XREF FILE DATASETS
C                              2 => FAULT IN XREF FILE TERM COUNT
C                              3 => FAULT IN XREF FILE LEVEL COUNT
C
C          (C*18) C18     = GENERAL CHARACTER STRING
C
C  ROUTINES:
C          ROUTINE    SOURCE    BRIEF DESCRIPTION
C          -------------------------------------------------------------
C          I4UNIT     ADAS      FETCH UNIT NUMBER FOR OUTPUT OF MESSAGES
C          XXFLNM     ADAS      CONVERT SHORT FILE NAME TO FULL NAME
C
C  AUTHOR:  H. P. SUMMERS, UNIVERSITY OF STRATHCLYDE
C          JA8.08
C          TEL. 0141-553-4196
C
C  DATE:    02/04/98
C
C  UPDATE:
C
C  VERSION: 1.1                                         DATE: 23-06-98
C  MODIFIED: HUGH SUMMERS
C               FIRST VERSION.        
C
C-----------------------------------------------------------------------
C-----------------------------------------------------------------------
      CHARACTER*80        DSNBD,       DSNSP,       DSNSPO
      INTEGER             IERROR,      IGPTRM(NDPRT)
      INTEGER             IGTRM(NDLEV),             ISLVL(NDJLEV)
      INTEGER             ISPLVL(NDPRT),            ISPTRM(NDPRT)
      INTEGER             ISTRM(NDLEV),             IUNIT
      INTEGER             JTPREF(NDPRT),            JTREF(NDJLEV)
      INTEGER             NDJLEV,      NDLEV,       NDPRT,       NLVL
      INTEGER             NPLVL,       NPTRM,       NTRM
      LOGICAL             LSJ
      REAL*8              FSLVL(NDJLEV),            FSPLVL(NDPRT)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk