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)