ADAS Subroutine c3data
SUBROUTINE C3DATA( IUNIT , DSNAME , & NSTORE , & NBSEL , ISELA , & CWAVEL , CDONOR , CRECVR , & CFILE , CPCODE , 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: C3DATA ********************* C C PURPOSE : TO FETCH DATA FROM INPUT QEF DATA SET. C C CALLING PROGRAM: ADAS303, SQEF 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) NSTORE = MAXIMUM NUMBER OF DATA BLOCKS ALLOWED C C OUTPUT: (I*4) NBSEL = NUMBER OF BLOCKS PRESENT C OUTPUT: (I*4) ISELA() = INDEX NUMBER OF DATA BLOCK C C OUTPUT: (C*5) CWAVEL()= INPUT DATA FILE: TRANSITION C DIMENSION: DATA-BLOCK INDEX C OUTPUT: (C*8) CDONOR()= INPUT DATA FILE: DONOR NEUTRAL ATOM C DIMENSION: DATA-BLOCK INDEX C OUTPUT: (C*5) CRECVR()= INPUT DATA FILE: RECEIVER NUCLEUS C DIMENSION: DATA-BLOCK INDEX C OUTPUT: (C*8) CFILE() = INPUT DATA FILE: SPECIFIC ION FILE SOURCE C DIMENSION: DATA-BLOCK INDEX C OUTPUT: (C*8) CPCODE()= INPUT DATA FILE: PROCESSING CODE C DIMENSION: DATA-BLOCK INDEX C OUTPUT: (C*6) CINDM() = FILE DATA FILE: EMISSION TYPE 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: NSTORE 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: NSTORE C C ROUTINES: C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C I4UNIT ADAS FETCHES FILE HANDLE FOR ERROR MESSAGE C C AUTHOR: H P SUMMERS, UNIVERSITY OF STRATHCLDYE C JA 8.08 C TEL. 0141-553-4196 C C DATE: 19/04/95 C C UPDATE: 04/05/95 TIM HAMMOND - UNIX PORT C Increased DSNAME from 44 -> 80 C C UPDATE: 15/05/95 TIM HAMMOND - UNIX PORT C Changed delimiter character from C '\' to '!' as otherwise will not C compile. C C C VERSION : 1.2 C DATE : 02-12-2004 C MODIFIED: Martin O'Mullane C - Warn user that the routine is now deprecated C and that xxdata_12 should be used instead. C C----------------------------------------------------------------------- C----------------------------------------------------------------------- CHARACTER*8 CDONOR(NSTORE), CFILE(NSTORE) CHARACTER*6 CINDM(NSTORE) CHARACTER*8 CPCODE(NSTORE) CHARACTER*5 CRECVR(NSTORE), CWAVEL(NSTORE) CHARACTER*80 DSNAME INTEGER ISELA(NSTORE), IUNIT INTEGER NBMAGA(NSTORE), NBSEL INTEGER NDENSA(NSTORE), NENERA(NSTORE) INTEGER NSTORE, NTEMPA(NSTORE) INTEGER NZEFFA(NSTORE) REAL*8 BMAGA(12,NSTORE), BMREF(NSTORE) REAL*8 DENSA(24,NSTORE), DEREF(NSTORE) REAL*8 ENERA(24,NSTORE), ENREF(NSTORE) REAL*8 QBMAGA(12,NSTORE), QDENSA(24,NSTORE) REAL*8 QEFREF(NSTORE), QENERA(24,NSTORE) REAL*8 QTEMPA(12,NSTORE), QZEFFA(12,NSTORE) REAL*8 TEMPA(12,NSTORE), TEREF(NSTORE) REAL*8 ZEFFA(12,NSTORE), ZEREF(NSTORE)