ADAS Subroutine b8setp
SUBROUTINE B8SETP( IZ0 , IZ , & NDLEV , IL , ICNTE , & CSTRGA , ISA , ILA , XJA , & STRGA , NPL , CPRTA , NDMET, & LSS04A , & STRGMF , STRGMI & ) C----------------------------------------------------------------------- C C ****************** FORTRAN77 SUBROUTINE: B8SETP ********************* C C PURPOSE: TO SET UP PARAMETERS IN THE SHARED POOLED FOR PANEL DISPLAY C C CALLING PROGRAM: ADAS208 C C DATA: C DATA IS OBTAINED VIA SUBROUTINE 'BADATA' C C SUBROUTINE: C C INPUT : (I*4) IZ0 = NUCLEAR CHARGE READ C INPUT : (I*4) IZ = RECOMBINED ION CHARGE READ C C INPUT : (I*4) NDLEV = MAXIMUM NUMBER OF ENERGY LEVELS ALLOWED C INPUT : (I*4) IL = INPUT DATA FILE: NUMBER OF ENERGY LEVELS C INPUT : (I*4) ICNTE = NUMBER OF ELECTRON IMPACT TRANSITIONS C C INPUT : (C*18) CSTRGA()= NOMENCLATURE/CONFIGURATION FOR LEVEL 'IA()' C INPUT : (I*4) ISA() = MULTIPLICITY FOR LEVEL 'IA()' C NOTE: (ISA-1)/2 = QUANTUM NUMBER (S) C INPUT : (I*4) ILA() = QUANTUM NUMBER (L) FOR LEVEL 'IA()' C INPUT : (R*8) XJA() = QUANTUM NUMBER (J-VALUE) FOR LEVEL 'IA()' C NOTE: (2*XJA)+1 = STATISTICAL WEIGHT C INPUT : (I*4) NPL = NUMBER OF PARENTS IN INPUT DATA SET C INPUT : (C*9) CPRTA() = PARENT NAME FROM INPUT DATA SET C INPUT : (I*4) NDMET = MAX.NO.OF METASTABLES ALLOWED C I/O : (L*4) LSS04A(,)= .TRUE. => IONIS. RATE SET IN ADF04 FILE: C .FALSE.=> NOT SET IN ADF04 FILE C 1ST DIM: LEVEL INDEX C 2ND DIM: PARENT METASTABLE INDEX C C OUTPUT: (C*22) STRGA() = LEVEL DESIGNATIONS C OUTPUT: (C*11) STRGMF()= INFORMATION STRINGS FOR IDL C OUTPUT: (C*12) STRGMI()= INFORMATION STRINGS FOR IDL C C (C*8) F6 = PARAMETER = 'VREPLACE' C C (I*4) ILEN = LENGTH, IN BYTES, OF ISPF DIALOG VARIABLES C (I*4) ILEV = ARRAY COUNTER FOR LEVEL INDEX C (I*4) J = VALUE OF QUANTUM NUMBER L + 1 C (I*4) LFPOOL = NO. OF LEVEL STRINGS SENT TO FUNCTION POOL C C (C*2) SZ0 = NUCLEAR CHARGE READ C (C*2) SZ = RECOMBINED ION CHARGE READ C (C*4) SCNTE = NUMBER OF ELECTRON IMPACT TRANSITIONS C (C*4) SIL = NUMBER OF ENERGY LEVELS C (C*1) CONFIG()= QUANTUM NUMBER (L) LETTERS C DIMENSION: QUANTUM NUMBER L + 1 C (C*8) CHA() = FUNCTION POOL NAMES: CHARGE VALUES C (C*8) CHB() = FUNCTION POOL NAMES: LEVEL DESIGNATIONS <=99 C (I*4) PIPEOU = PARAMETER = UNIT NUMBER FOR OUTPUT TO PIPE C C C ROUTINES: C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C C AUTHOR: D.H.BROOKS, UNIVERSITY OF STRATHCLYDE C C DATE: 11/04/96 C C VERSION: 1.0 DATE: 11/04/96 C MODIFIED: DH BROOKS C - CREATED FROM SKELETON OF BXSETP. ADDED NPL, NDMET & CPRTA TO C PARAMETER LIST & SENT CPRTA THROUGH TO IDL AS STRGMF. ALSO C BUILT STRGMI TO SEND THROUGH FOR 502V208. C C VERSION: 1.1 DATE: 10/05/96 C MODIFIED: WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC) C - CHANGED DIMENSIONING OF CPRTA TO AGREE WITH ADAS208 AND ALTERED C LOOP TO WRITE STRGMF SO ARRAY INDEX DIDN'T GO OUT OF BOUNDS. C PUT UNDER S.C.C.S. C C VERSION: 1.2 DATE: 20/05/96 C MODIFIED: WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC) C - ADDED XXFLSH CALLS C C VERSION: 1.3 DATE: 13/09/99 C MODIFIED: HUGH SUMMERS, UNIVERSITY OF STRATHCLYDE C - ADDED TRUTH TABLE FOR S-LINE IONISATION DATA AVAILABILITY C IN ADF04 FILE TO INFORMATION TRANSFER TO IDL C C----------------------------------------------------------------------- C----------------------------------------------------------------------- CHARACTER*9 CPRTA(NDMET) CHARACTER*18 CSTRGA(IL) CHARACTER*22 STRGA(NDLEV) CHARACTER*11 STRGMF(NDMET) CHARACTER*12 STRGMI(NDLEV) INTEGER ICNTE, IL, ILA(IL), ISA(IL) INTEGER IZ, IZ0, NDLEV, NDMET INTEGER NPL LOGICAL LSS04A(NDLEV,NDMET) REAL*8 XJA(IL)