ADAS Subroutine d7bndl
SUBROUTINE D7BNDL(NDLEV , NDTRN , NDMET , NDOSC ,
+ IL , WA , XJA , NV , TSCEF ,
+ ICNTE , IETRN , IE1A , IE2A , AA , SCOM ,
+ NMET , IMETR , PTOT , FMIN , Z1 ,
+ ICTM , IUMA , CSTGMA,
+ FFMA , WVMA , GBMA , PYMA
+ )
C-----------------------------------------------------------------------
C
C ****************** FORTRAN77 SUBROUTINE: D7BNDL *********************
C
C
C PURPOSE: SUBROUTINE TO DISCARD TRANSITIONS WITH AN OSCILLATOR
C STRENGTH BELOW A CERTAIN INPUT VALUE. GETS SOME VALUES
C VIA A PIPE FROM IDL AND THEN RETURNS SOME VALUES TO IDL
C FOR DISPLAY USE IN CW_ADAS407_PROC
C
C
C CALLING PROGRAM: D7ISPF
C
C
C SUBROUTINE:
C
C
C
C INPUT : (I*4) NDLEV = MAXIMUM NUMBER OF LEVELS THAT CAN BE READ
C INPUT : (I*4) NDTRN = MAXIMUM NUMBER OF TRANSITIONS
C INPUT : (I*4) NDLEV = MAXIMUM NUMBER OF LEVELS THAT CAN BE READ
C INPUT : (I*4) NDTRN = MAXIMUM NUMBER OF TRANSITIONS
C INPUT : (I*4) NDMET = MAXIMUM NUMBER OF METASTABLES
C INPUT : (I*4) NDOSC = MAXIMUM NUMBER OF RADIATIVE TRANSITIONS
C ALLOWED FOR ASSEMBLING POWER FOR EACH
C METASTABLE
C
C INPUT : (I*4) IL = NUMBER OF ENERGY LEVELS
C INPUT : (R*8) WA() = ENERGY RELATIVE TO LEVEL 1 (CM-1)
C 1ST DIM: LEVEL INDEX
C INPUT : (R*8) XJA() = QUANTUM NUMBER (J-VALUE) FOR LEVEL 'IA()'
C (NOTE: (2*XJA)+1 = STATISTICAL WEIGHT)
C 1ST DIM: LEVEL INDEX
C INPUT : (I*4) NV = INPUT DATA FILE: NUMBER OF TEMPERATURES
C INPUT : (R*8) TSCEF(,) = INPUT DATA FILE: ELECTRON TEMPERATURES
C 2ND DIMENSION: 1 => KELVIN (IFOUT=1)
C 2 => EV (IFOUT=2)
C 3 => REDUCED (IFOUT=3)
C INPUT : (I*4) ICNTE = NUMBER OF ELECTRON COLL. TRANSITIONS
C INPUT : (I*4) IETRN() = ELECTRON IMPACT TRANSITION:
C INDEX VALUES IN MAIN TRANS. ARRAYS WHICH
C REPRESENT ELECTRON IMPACT TRANSITIONS.
C INPUT : (I*4) IE1A() = TRANSITION: LOWER ENERGY LEVEL INDEX
C 1ST DIM: ELECTRON COLL. TRANSITION INDEX
C INPUT : (I*4) IE2A() = TRANSITION: UPPER ENERGY LEVEL INDEX
C 1ST DIM: ELECTRON COLL. TRANSITION INDEX
C INPUT : (R*8) AA() = TRANSITION: A-VALUE (SEC-1)
C 1ST DIM: ELECTRON COLL. TRANSITION INDEX
C INPUT : (R*8) SCOM(,) = TRANSITION:
C GAMMA VALUES (CASE ' ' & 'P')
C RATE COEFFT. (CM3 SEC-1) (CASE 'H' & 'R')
C 1ST DIMENSION - TEMPERATURE 'SCEF()'
C 2ND DIMENSION - TRANSITION NUMBER
C
C INPUT : (I*4) NMET = NUMBER OF METASTABLES SELECTED
C INPUT : (I*4) IMETR() = INDEX OF METASTABLES IN LEVELE LIST
C 1ST DIM: METASTABLE INDEX
C OUTPUT: (R*8) PTOT(,) = TOTAL ZERO-DENS. RAD. POWER FOR EACH META.
C 1ST DIM: SPECIFIC ION FILE TEMP. INDEX
C 2ND DIM: METASTABLE INDEX
C INPUT : (R*8) FMIN = MINIMIUM PERMITTED OSCILLATOR STRENGTH
C INPUT : (R*8) Z1 = RECOMBINING ION CHARGE
C
C
C OUTPUT: (I*4) ICTM() = NUMBER OF INCLUDED TRANSITIONS FOR EACH
C METASTABLE
C 1ST DIM: METASTABLE INDEX
C OUTPUT: (I*4) IUMA(,) = INDEX OF METASTABLE ASSIGNED TRANSITION
C IN FULL ELECTRON COLL. TRANSITION LIST.
C 1ST DIM: METASTABLE TRANSITION SET INDEX
C 2ND DIM: METASTABLE INDEX
C OUTPUT: (C*22) CSTGMA(,) = STRING IDENTIFIER FOR INCLUDED TRANSITION
C CONTAINING J,I,FIJ,WVLN
C 1ST DIM: METASTABLE TRANSITION SET INDEX
C 2ND DIM: METASTABLE INDEX
C OUTPUT: (I*4) FFMA(,) = OSCILLATOR STRENGTH OF INCLUDED TRANSITION
C 1ST DIM: METASTABLE TRANSITION SET INDEX
C 2ND DIM: METASTABLE INDEX
C OUTPUT: (I*4) WVMA(,) = WAVELENGTH (A) OF INCLUDED TRANSITION
C 1ST DIM: METASTABLE TRANSITION SET INDEX
C 2ND DIM: METASTABLE INDEX
C OUTPUT: (R*8) GBMA(,,) = GBAR FOR ALLLOWED TRANSITIONS
C 1ST DIM: SPECIFIC ION FILE TEMP. INDEX
C 2ND DIM: INCLUDED ALLOWED TRANS. INDEX
C 3RD DIM: METASTABLE INDEX
C OUTPUT: (R*8) PYMA(,,) = VAN REGEMORTER P FOR ALLOWED TRANSITIONS
C 1ST DIM: SPECIFIC ION FILE TEMP. INDEX
C 2ND DIM: INCLUDED ALLOWED TRANS. INDEX
C 3RD DIM: METASTABLE INDEX
C
C
C ROUTINES:
C ROUTINE SOURCE BRIEF DESCRIPTION
C ------------------------------------------------------------
C D7PYVR ADAS EVALUATES VAN REGEMORTER P FACTOR
C
C
C AUTHOR: M O'MULLANE, UCC
C
C DATE: 18/05/94
C
C UPDATE:
C
C UNIX-IDL PORT:
C WILLIAM OSBORN, TESSELLA SUPPORT SERVICES PLC.
C
C DATE: 22ND APRIL 1996
C
C VERSION: 1.1 DATE: 22-04-96
C MODIFIED: WILLIAM OSBORN
C - FIRST VERSION.
C
C VERSION: 1.2 DATE: 22-04-96
C MODIFIED: WILLIAM OSBORN
C REPLACED NDMET BY NMET IN LOOP TO READ IMETR
C-----------------------------------------------------------------------
C-----------------------------------------------------------------------
CHARACTER*22 CSTGMA(NDOSC,NDMET)
INTEGER ICNTE, ICTM(NDMET), IE1A(NDTRN)
INTEGER IE2A(NDTRN), IETRN(NDTRN), IL
INTEGER IMETR(NDMET), IUMA(NDOSC,NDMET)
INTEGER NDLEV, NDMET, NDOSC, NDTRN
INTEGER NMET, NV
REAL*8 AA(NDTRN), FFMA(NDOSC,NDMET), FMIN
REAL*8 GBMA(14,NDOSC,NDMET), PTOT(14,NDMET)
REAL*8 PYMA(14,NDOSC,NDMET), SCOM(14,NDTRN)
REAL*8 TSCEF(14,3), WA(NDLEV), WVMA(NDOSC,NDMET)
REAL*8 XJA(NDLEV), Z1