ADAS Subroutine b6wr12
SUBROUTINE B6WR12( IUNIT , DATE , IZ1 , IL ,
& NDMET , NDTEM , NDDEN ,
& LNORM ,
& NMET , IMETR ,
& IFOUT , MAXT , TINE ,
& IDOUT , MAXD , DINE ,
& CSTRGA , PL
& )
C-----------------------------------------------------------------------
C
C ****************** FORTRAN77 SUBROUTINE: B6WR12 *********************
C
C PURPOSE: TO OUTPUT TOTAL LINE POWER PARAMETERS TO THE PASSING
C FILE ON STREAM 'IUNIT'.
C
C CALLING PROGRAM: ADAS206
C
C SUBROUTINE:
C
C INPUT : (I*4) IUNIT = OUTPUT STREAM NUMBER
C INPUT : (C*8) DATE = CURRENT DATE AS 'DD/MM/YY'
C INPUT : (I*4) IZ1 = RECOMBINING ION CHARGE
C (NOTE: IZ1 SHOULD EQUAL Z+1)
C INPUT : (I*4) IL = NUMBER OF INDEX ENERGY LEVELS
C
C INPUT : (I*4) NDMET = MAX. NO. OF METASTABLES ALLOWED
C INPUT : (I*4) NDTEM = MAX. NO. OF TEMPERATURES ALLOWED
C INPUT : (I*4) NDDEN = MAX. NUMBER OF DENSITIES ALLOWED
C
C INPUT : (L*4) LNORM =.TRUE. => IF NMET=1 THEN TOTAL AND SPECIFIC
C LINE POWER OUTPUT FILES PLT/PLS
C NORMALISED TO STAGE TOT.POPULATN.
C (** NORM TYPE = T)
C =.FALSE. => OTHERWISE NORMALISE TO IDENTIFIED
C METASTABLE POPULATIONS.
C (** NORM TYPE = M)
C
C INPUT : (I*4) NMET = NUMBER OF METASTABLES ( 1 -> 5 )
C INPUT : (I*4) IMETR() = INDEX OF METASTABLES IN COMPLETE LEVEL LIST
C
C INPUT : (I*4) IFOUT = 1 => INPUT TEMPERATURES IN KELVIN
C 2 => INPUT TEMPERATURES IN EV
C 2 => INPUT TEMPERATURES IN REDUCED FORM
C INPUT : (I*4) MAXT = NUMBER OF INPUT TEMPERATURES (1 -> 20)
C INPUT : (R*8) TINE() = ELECTRON TEMPERATURES (UNITS: SEE 'IFOUT')
C
C INPUT : (I*4) IDOUT = 1 => INPUT DENSITIES IN CM-3
C 2 => INPUT DENSITIES IN REDUCED FORM
C INPUT : (I*4) MAXD = NUMBER OF INPUT DENSITIES (1 -> 20)
C INPUT : (R*8) DINE() = ELECTRON DENSITIES (UNITS: SEE 'IFOUT')
C
C INPUT : (C*18) CSTRGA()= INDEX LEVEL CONFIGURATIONS
C INPUT : (R*8) PL(,,) = TOTAL LINE POWERS FOR METASTABLES. THIS IS
C THE SUM OF ALL EMISSIONS ORGINATING IN THE
C COLLISIONAL-RADIATIVE SENSE FROM THE
C METASTABLE.
C => P(TOTAL)/N(IMET) (ERGS SEC-1)
C 1st DIMENSION: METASTABLE INDEX
C 2nd DIMENSION: TEMPERATURE INDEX
C 3rd DIMENSION: DENSITY INDEX
C
C (I*4) L1 = PARAMETER = 1
C (I*4) L2 = PARAMETER = 2
C (I*4) L3 = PARAMETER = 3
C
C (I*4) I = GENERAL USE
C (I*4) IM = ARRAY INDEX POINTER FOR METASTABLE STATES
C (I*4) IT = ARRAY INDEX POINTER FOR TEMPERATURES
C (I*4) ID = ARRAY INDEX POINTER FOR DENSITIES
C
C (R*8) RDEN() = ELECTRON DENSITIES (UNITS: REDUCED FORM)
C (R*8) RTEM() = ELECTRON TEMPERATURES (UNITS: REDUCED FORM)
C
C (C*1) CSTAR = '*'
C
C ROUTINES:
C ROUTINE SOURCE BRIEF DESCRIPTION
C ------------------------------------------------------------
C XXTCON ADAS CONVERTS ENTERED TEMP. VALUES TO EV.
C XXDCON ADAS CONVERTS ENTERED DENSITY VALUES TO CM-3.
C
C AUTHOR: PAUL E. BRIDEN (TESSELLA SUPPORT SERVICES PLC)
C K1/0/81
C JET EXT. 4569
C
C DATE: 09/10/90
C
C UPDATE: 18/05/93 - PE BRIDEN: ADDED NORMALISATION INFO TO OUTPUT.
C NEW ARGUMENT - LNORM
C CHANGED FORMAT - 1011
C
C UPDATE: 20/05/93 - ADAS91 PEB: TO REFLECT CHANGES IN BXDATA THE
C CHARACTER ARRAY CSTRGA IS NOW 18 BYTES
C INSTEAD OF 12.
C NOTE: ONLY THE FIRST 12 BYTES ARE
C OUTPUT TO THE PASSING FILE.
C
C UNIX-IDL PORT:
C
C AUTHOR: WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC)
C
C DATE: 06/06/96
C
C VERSION: 1.1 DATE:06/06/96
C MODIFIED: WILLIAM OSBORN
C - FIRST VERSION
C
C-----------------------------------------------------------------------
CHARACTER*18 CSTRGA(IL)
CHARACTER*8 DATE
INTEGER IDOUT, IFOUT, IL
INTEGER IMETR(NMET), IUNIT, IZ1, MAXD
INTEGER MAXT, NDDEN, NDMET, NDTEM
INTEGER NMET
LOGICAL LNORM
REAL*8 DINE(MAXD), PL(NDMET,NDTEM,NDDEN)
REAL*8 TINE(MAXT)