Search Site | Contact Details | FAQ

ADAS Subroutine xxdata_12

      subroutine xxdata_12(iunit  , dsname ,
     &                     ndtem  , ndden  , ndein  , ndzef   , ndmag  ,
     &                     ndstore,
     &                     nbsel  ,
     &                     csymb  , czion  , cwavel , cdonor , crecvr  ,
     &                     ctrans , cfile  , ctype  , cindm  ,
     &                     qefref ,
     &                     enref  , teref  , deref  , zeref   , bmref  ,
     &                     nenera , ntempa , ndensa , nzeffa  , nbmaga ,
     &                     enera  , tempa  , densa  , zeffa   , bmaga  ,
     &                     qenera , qtempa , qdensa , qzeffa  , qbmaga
     &                    )
c-----------------------------------------------------------------------
c
c  ***************** fortran77 subroutine: xxdata_12 *******************
c
c  purpose : To fetch data from input dataset of type adf12.
c
c  notes:    Extensive rewrite of xxdata_12.for which it is a
c            replacement.  Designed to handle automatically produced
c            heavy species data sets.
c
c  calling program: adas316 and general
c
c  subroutine:
c
c  input : (i*4)  iunit     = unit number to read from
c  input : (c*80) dsname    = mvs data set name of data set being read
c  input : (i*4)  ndstore   = maximum number of data blocks allowed
c  input : (i*4)  ndtem     = maximum number of electron temperatures
c  input : (i*4)  ndden     = maximum number of electron densities
c  input : (i*4)  ndein     = maximum number of beam energies
c  input : (i*4)  ndzef     = maximum number of z effectives
c  input : (i*4)  ndmag     = maximum number of magnetic fields
c
c  output: (i*4)  nbsel     = number of blocks present
c
c  output: (c*(*))csymb()   = input data file: element symbol
c                             dimension: data-block index
c  output: (c*(*))czion()   = input data file: emitting ion charge
c                             dimension: data-block index
c  output: (c*(*))cwavel()  = input data file: wavelength (A)
c                             dimension: data-block index
c  output: (c*(*))cdonor()  = input data file: donor neutral atom
c                             dimension: data-block index
c  output: (c*(*))crecvr()  = input data file: receiver nucleus
c                             dimension: data-block index
c  output: (c*(*))ctrans()  = input data file: transition
c                             dimension: data-block index
c  output: (c*(*))cfile()   = input data file: specific ion file source
c                             dimension: data-block index
c  output: (c*(*))ctype()   = input data file: type of emissivity
c                             dimension: data-block index
c  output: (c*(*))cindm()   = file data file: emissivity index
c                             dimension: data-block index
c
c  output: (r*8)  qefref()  = reference value of rate coefficient
c  output: (r*8)  enref()   =     "       "   "  energy
c  output: (r*8)  teref()   =     "       "   "  temperature
c  output: (r*8)  deref()   =     "       "   "  density
c  output: (r*8)  zeref()   =     "       "   "  effective z
c  output: (r*8)  bmref()   =     "       "   "  magnetic field
c  output: (i*4)  nenera()  = number of energies
c  output: (i*4)  ntempa()  = number of temperatures
c  output: (i*4)  ndensa()  = number of densities
c  output: (i*4)  nzeffa()  = number of effective z's
c  output: (i*4)  nbmaga()  = number of magnetic field values
c                             1st. dim: ndstore
c                             (for above arrays)
c
c  output: (r*8)  enera(,)  = energies
c  output: (r*8)  qenera(,) = rate coefficients for energy value
c  output: (r*8)  tempa(,)  = temperatures
c  output: (r*8)  qtempa(,) = rate coefficients for temperatures
c  output: (r*8)  densa(,)  = densities
c  output: (r*8)  qdensa(,) = rate coefficients for desnities
c  output: (r*8)  zeffa(,)  = effective z
c  output: (r*8)  qzeffa(,) = rate coefficients for effective z
c  output: (r*8)  bmaga(,)  = magnetic field
c  output: (r*8)  qbmaga(,) = rate coefficients for magnetic fields
c                             1st dim: 12 or 24  depending on parameter
c                             2nd dim: ndstore
c
c  routines:
c           routine    source    brief description
c           ------------------------------------------------------------
c           i4unit     adas      fetches file handle for error message
c           xxslen     adas      locate first and last char. of string
c           xxhkey     adas      extract response to key on a text line
c           xxcase     adas      convert a string to upper or lower case
c
c
c  author:  h p summers, university of strathcldye
c  date:    31/05/07
c
c  update:
c
c VERSION  : 1.1
c DATE     : 05-06-2007
c MODIFIED : H P Summers
c              - First version.
c
c-----------------------------------------------------------------------
      CHARACTER*(*)       CDONOR(NDSTORE),          CFILE(NDSTORE)
      CHARACTER*(*)       CINDM(NDSTORE),           CRECVR(NDSTORE)
      CHARACTER*(*)       CSYMB(NDSTORE),           CTRANS(NDSTORE)
      CHARACTER*(*)       CTYPE(NDSTORE),           CWAVEL(NDSTORE)
      CHARACTER*(*)       CZION(NDSTORE),           DSNAME
      INTEGER             IUNIT,       NBMAGA(NDSTORE),          NBSEL
      INTEGER             NDDEN,       NDEIN,       NDENSA(NDSTORE)
      INTEGER             NDMAG,       NDSTORE,     NDTEM,       NDZEF
      INTEGER             NENERA(NDSTORE),          NTEMPA(NDSTORE)
      INTEGER             NZEFFA(NDSTORE)
      REAL*8              BMAGA(NDMAG,NDSTORE),     BMREF(NDSTORE)
      REAL*8              DENSA(NDDEN,NDSTORE),     DEREF(NDSTORE)
      REAL*8              ENERA(NDEIN,NDSTORE),     ENREF(NDSTORE)
      REAL*8              QBMAGA(NDMAG,NDSTORE)
      REAL*8              QDENSA(NDDEN,NDSTORE),    QEFREF(NDSTORE)
      REAL*8              QENERA(NDEIN,NDSTORE)
      REAL*8              QTEMPA(NDTEM,NDSTORE)
      REAL*8              QZEFFA(NDZEF,NDSTORE),    TEMPA(NDTEM,NDSTORE)
      REAL*8              TEREF(NDSTORE),           ZEFFA(NDZEF,NDSTORE)
      REAL*8              ZEREF(NDSTORE)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk