ADAS Subroutine c3datao
SUBROUTINE C3DATAO( IUNIT , IBSEL , & NBSEL , NSTORE , & IPASS , & IONNAM , QEFREF , & TEREF , DEREF , & ZEREF , ENREF , & BMREF , NENERA , & NDENSA , NZEFFA , & NBMAGA , NTEMPA , & ENERA , QENERA , & TEMPA , QTEMPA , & DENSA , QDENSA , & ZEFFA , QZEFFA , & BMAGA , QBMAGA ) C----------------------------------------------------------------------- C C ****************** FORTRAN77 SUBROUTINE: C3DATAO ******************** C C ********************************************************************** C * WARNING - WARNING - WARNING - WARNING - WARNING - WARNING - WARNING* C *--------------------------------------------------------------------* C * OLD VERSION OF C3DATA - ONLY USED BY SQEF (UNTIL SQEF UPDATED) * C ********************************************************************** C C PURPOSE : READ IN VALUES FROM AN 'IONATOM' DATA SET OPENED BY C C3FILE C C CALLING PROGRAM: SQEF C C SUBROUTINE: C C INPUT : (I*4) IUNIT = UNIT NUMBER TO READ FROM C (OPENED BY C3FILE) C INPUT : (I*4) NSTORE = ARRAY DIMENSION C INPUT : (I*4) ISEL = INDEX NUMBER OF SELECTED BLOCK C FROM IONATOM FILE C INPUT : (I*4) IPASS = 0 IF DATA FILE TO BE READ IN AFRESH C = 1 IF DATA FILE IS NOT TO BE READ IN AGAIN C (IPASS IS SET TO 0 WHEN C ISEL IS NOT A VALID INDEX) C OUTPUT: (I*4) NBSEL = NUMBER OF BLOCKS PRESENT C OUTPUT: (C*80) IONNAM = NAME OF ION 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: NSTORE C (FOR ABOVE ARRAYS) 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: NSTORE C 2ND DIM: 12 OR 24 DEPENDING ON PARAMETER C C ROUTINES: C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C I4UNIT ADAS FETCHES FILE HANDLE FOR ERROR MESSAGE C C UPDATE: 15/05/95 - Tim Hammond UNIX PORT C Put under SCCS control C C VERSION: 1.2 DATE: 08-11-99 C MODIFIED: RICHARD MARTIN C CHANGED IONNAM*80(80) TO IONNAM(80)*80 C C----------------------------------------------------------------------- C----------------------------------------------------------------------- CHARACTER*80 IONNAM(80) INTEGER IBSEL, IPASS, IUNIT INTEGER NBMAGA(NSTORE), NBSEL INTEGER NDENSA(NSTORE), NENERA(NSTORE) INTEGER NSTORE, NTEMPA(NSTORE) INTEGER NZEFFA(NSTORE) REAL*8 BMAGA(NSTORE,12), BMREF(NSTORE) REAL*8 DENSA(NSTORE,24), DEREF(NSTORE) REAL*8 ENERA(NSTORE,24), ENREF(NSTORE) REAL*8 QBMAGA(NSTORE,12), QDENSA(NSTORE,24) REAL*8 QEFREF(NSTORE), QENERA(NSTORE,24) REAL*8 QTEMPA(NSTORE,12), QZEFFA(NSTORE,12) REAL*8 TEMPA(NSTORE,12), TEREF(NSTORE) REAL*8 ZEFFA(NSTORE,12), ZEREF(NSTORE)