Search Site | Contact Details | FAQ

ADAS Subroutine c8prsl

      SUBROUTINE C8PRSL( MXNSHL , MXPRSL , IZ0    , IZ1    ,
     &                   NPLINE , NPU    , NPL    , NUMAX  ,
     &                   WHIGH  , WLOW   , EM     , QEX    ,
     &                   TOTPOP , TOTEMI , AVRGWL , QEFF   ,
     &                   TBLPOP , TBLEMI , TBLWLN
     &                 )
C
C
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: C8PRSL *********************
C
C  PURPOSE:  FILLS TABLES FOR REQUESTED PREDICTIONS OF SPECTRUM LINES.
C
C  CALLING PROGRAM: C8EMIS
C
C  INPUT : (I*4)  MXNSHL   = MAXIMUM VALUE OF PRINCIPAL QUANTUM NUMBER.
C  INPUT : (I*4)  MXPRSL   = MAXIMUM NUMBER OF SPECTRUM LINES TO
C                            PREDICT.
C  INPUT : (R*8)  IZ0      = NUCLEAR CHARGE.
C  INPUT : (R*8)  IZ1      = ION CHARGE.
C  INPUT : (I*4)  NPLINE   = NUMBER OF SPECTRUM LINES TO PREDICT.
C  INPUT : (I*4)  NPU()    = LIST OF UPPER PRINCIPAL QUANTUM NUMBERS OF
C                            SPECTRUM LINES TO PREDICT.
C                            DIMENSION: PREDICTED LINE INDEX.
C  INPUT : (I*4)  NPL()    = LIST OF LOWER PRINCIPAL QUANTUM NUMBERS OF
C                            SPECTRUM LINES TO PREDICT.
C                            DIMENSION: PREDICTED LINE INDEX.
C  INPUT : (I*4)  NUMAX    = MAXIMUM UPPER PRINCIPAL QUANTUM NUMBER FOR
C                            OBSERVED SPECTRUM LINES.
C  INPUT : (R*8)  WHIGH()  =
C                            DIMENSION: REFERENCED BY FUNC I4IDFL(N,L).
C  INPUT : (R*8)  WLOW(,)  =
C                            1ST DIMENSION: REFERENCED BY I4IDFL(N,L).
C                            2ND DIMENSION: REFERENCED BY L+1.
C  INPUT : (R*8)  EM       = EMMISION MEASURE.
C  INPUT : (R*8)  QEX()    =
C                            DIMENSION: MXNSHL.
C
C  OUTPUT: (R*8)  TOTPOP() = TOTAL COLLISION POP. FOR PREDICTED SPECTRUM
C                            LINE.
C                            UNITS: CM-2
C                            DIMENSION: PREDICTED LINE INDEX.
C  OUTPUT: (R*8)  TOTEMI() = TOTAL COLLISION EMISSIVITIES FOR PREDICTED
C                            SPECTRUM LINE.
C                            UNITS: PH CM-2 SEC-1
C                            DIMENSION: PREDICTED LINE INDEX.
C  OUTPUT: (R*8)  AVRGWL() = AVERAGE AIR WAVELENGTH FOR PREDICTED
C                            SPECTRUM LINE.
C                            UNITS: A
C                            DIMENSION: PREDICTED LINE INDEX.
C  OUTPUT: (R*8)  QEFF()   = EFF. RATE COEFFICIENT FOR PREDICTED
C                            SPECTRUM LINE.
C                            UNITS:
C                            DIMENSION: PREDICTED LINE INDEX.
C  OUTPUT: (R*8)  TBLPOP(,)= TABLE OF COLLISION POP. FOR PREDICTED
C                            SPECTRUM LINE.
C                            UNITS: CM-2
C                            1ST DIMENSION: PREDICTED LINE INDEX.
C                            2ND DIMENSION: REFERENCED BY FUNC I4IDLI().
C  OUTPUT: (R*8)  TBLEMI(,)= TABLE OF COLLISION EMISSIVITIES FOR
C                            PREDICTED SPECTRUM LINE.
C                            UNITS: PH CM-2 SEC-1
C                            1ST DIMENSION: PREDICTED LINE INDEX.
C                            2ND DIMENSION: REFERENCED BY FUNC I4IDLI().
C  OUTPUT: (R*8)  TBLWLN(,)= TABLE OF WAVELENGTHS FOR PREDICTED SPECTRUM
C                            LINE.
C                            UNITS: A
C                            1ST DIMENSION: PREDICTED LINE INDEX.
C                            2ND DIMENSION: REFERENCED BY FUNC I4IDLI().
C
C  PARAM : (I*4)  C1       = PRECISION AIR WAVELENGTH PARAM.
C  PARAM : (I*4)  C2       = PRECISION AIR WAVELENGTH PARAM.
C  PARAM : (I*4)  C3       = PRECISION AIR WAVELENGTH PARAM.
C  PARAM : (I*4)  C4       = PRECISION AIR WAVELENGTH PARAM.
C  PARAM : (I*4)  C5       = PRECISION AIR WAVELENGTH PARAM.
C  PARAM : (I*4)  RZ       = PRECISION AIR WAVELENGTH PARAM.
C
C          (I*4)  IN       = LOOP INDEX FOR SPECTRUM LINES.
C          (I*4)  N        = PRINCIPAL QUANTUM NUMBER OF INITIAL STATE.
C          (I*4)  L        = LOOP INDEX FOR ORBITAL QUANTUM NUMBER OF
C                            INITIAL STATE.
C          (I*4)  N1       = PRINCIPAL QUANTUM NUMBER OF FINAL STATE.
C          (I*4)  L1       = LOOP INDEX FOR ORBITAL QUANTUM NUMBER OF
C                            FINAL STATE.
C          (I*4)  NP       = LOOP INDEX FOR PRINCIPAL QUANTUM NUMBER.
C          (I*4)  IDL      = ARRAY INDEX.
C          (I*4)  ID       = ARRAY INDEX.
C
C          (R*8)  Z1       = REAL VALUE = IZ1.
C          (R*8)  T1       = COL. POP. FOR PREDICTED SPECTRUM LINE.
C                            UNITS: CM-2
C          (R*8)  T2       = COL. EMIS. FOR PREDICTED SPECTRUM LINE.
C                            UNITS: PH CM-2 SEC-1
C          (R*8)  E0       = BINDING ENERGY
C                            UNITS: RYD
C          (R*8)  E10      = BINDING ENERGY
C                            UNITS: RYD
C          (R*8)  DELTA    =
C          (R*8)  SIG2     =
C          (R*8)  RF       =
C          (R*8)  WAVAIR   = WAVELENGTH FOR PREDICTED SPECTRUM LINE.
C                            UNITS: A
C          (R*8)  SUM1     = SUM OF COL. POP. FOR PREDICTED LINE.
C                            UNITS: CM-2
C          (R*8)  SUM2     = SUM OF COL. EMIS. FOR PREDICTED LINE.
C                            UNITS: PH CM-2 SEC-1
C          (R*8)  SUM3     = SUM OF WAVELENGTHS FOR PREDICTED LINE.
C                            UNITS: A
C
C
C ROUTINES:
C          ROUTINE    SOURCE    BRIEF DESCRIPTION
C          -------------------------------------------------------------
C          I4UNIT     ADAS      RETURNS UNIT NO. FOR OUTPUT OF MESSAGES.
C          I4IDFL     ADAS      RETURNS UNIQUE INDEX GIVEN QUANTUM
C                               NUMBERS N AND L.
C          I4IDLI     ADAS      RETURNS INDEX FOR PREDICTED SPECTRUM
C                               LINE TABLES.
C          R8ATAB     ADAS      RETURNS HYDRONIC L-RESOLVED A-VALUES.
C                               IF INPUT QUANTUM NUMBERS ARE INVALID
C                               THEN RETURNS ZERO.
C          R8CONST    ADAS      RETURNS FUNDAMENTAL ATOMIC CONSTANTS.
C          
C
C AUTHOR:  JONATHAN NASH (TESSELLA SUPPORT SERVICES PLC)
C          K1/0/81
C          JET EXT. 5183
C
C DATE:    14/10/93
C
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C           ADDED ERROR MESSAGE FOR NUMERICAL ERRORS INTRODUCED
C           BY BAD VALUES FOR THE OBSERVED SPECTRUM LINES
C           ALSO GENERAL UNIX PORT.
C
C DATE:     20/6/95
C
C VERSION: 1.2
C MODIFIED: Martin O'Mullane
C           - Corrected the vacuum to air conversion. Parameter C4 of the
C             expression for the refractive index of air should be 146.0 
C             and not 176.0. (see Astrophysical Quantities section 54)
C           - Introduced R8CONST to return fundamental atomic constants.
C             The mass dependent rydberg constant is returned if set
C             by XXRAMS in the main program. As a consequence RZ has
C             been removed from the parameter statement.
C
C DATE:     08/04/99
C
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      INTEGER             IZ0,         IZ1,         MXNSHL,      MXPRSL
      INTEGER             NPL(MXPRSL), NPLINE,      NPU(MXPRSL), NUMAX
      REAL*8              AVRGWL(MXPRSL),           EM
      REAL*8              QEFF(MXPRSL),             QEX(MXNSHL)
      REAL*8              TBLEMI(MXPRSL,2*MXNSHL-3)
      REAL*8              TBLPOP(MXPRSL,2*MXNSHL-3)
      REAL*8              TBLWLN(MXPRSL,2*MXNSHL-3)
      REAL*8              TOTEMI(MXPRSL),           TOTPOP(MXPRSL)
      REAL*8              WHIGH((MXNSHL*(MXNSHL+1))/2)
      REAL*8              WLOW((MXNSHL*(MXNSHL+1))/2,MXNSHL)
© Copyright 1995-2018 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk