Search Site | Contact Details | FAQ

ADAS Subroutine xxrate

      SUBROUTINE XXRATE( NDTRN  , NDTEM  , NDLEV ,
     &                   ICNT   , MAXT   ,
     &                   XJA    , ER     , TEMP  ,
     &                   I1A    , I2A    ,
     &                   RATE1  , DRATE1
     &                 )
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: XXRATE *********************
C
C  PURPOSE: TO CALCULATE THE EXCITATION AND DE-EXCITATION RATE COEFFICI-
C           ENTS FOR A SET OF INPUT TEMPERATURES(rydberg) & TRANSITIONS.
C           VALUES RETURNED ASSUMING UNIT GAMMA VALUES (I.E. GAMMA = 1)
C
C  CALLING PROGRAM:  GENERAL USE
C
C  SUBROUTINE:
C
C  INPUT :  (I*4)  NDTRN   = MAXIMUM NUMBER OF TRANSITIONS ALLOWED
C  INPUT :  (I*4)  NDTEM   = MAXIMUM NUMBER OF TEMPERATURES ALLOWED
C  INPUT :  (I*4)  NDLEV   = MAXIMUM NUMBER OF ENERGY LEVELS ALLOWED
C
C  INPUT :  (I*4)  ICNT    = NUMBER OF TRANSITIONS
C  INPUT :  (I*4)  MAXT    = NUMBER OF ISPF INPUT TEMPERATURES
C
C  INPUT :  (R*8)  XJA()   = QUANTUM NUMBER (J-VALUE) FOR GIVEN LEVEL.
C                            NOTE: (2*XJA)+1 = STATISTICAL WEIGHT
C  INPUT :  (R*8)  ER()    = ENERGY RELATIVE TO LEVEL 1 (RYDBERGS)
C                            DIMENSION ENERGY LEVEL.
C  INPUT :  (R*8)  TEMP()  = ISPF READ TEMPERATURES (KELVIN)
C
C
C  INPUT :  (I*4)  I1A()   = TRANSITION: LOWER ENERGY LEVEL INDEX
C  INPUT :  (I*4)  I2A()   = TRANSITION: UPPER ENERGY LEVEL INDEX
C
C  OUTPUT:  (R*8)  RATE1(,) = UNIT GAMMA EXCITATION RATE COEFFS(cm**3/s)
C                             1st DIMENSION: TEMPERATURE INDEX
C                             2nd DIMENSION: TRANSITION INDEX
C  OUTPUT:  (R*8)  DRATE1(,)= UNIT GAMMA DE-EXCIT'N RATE COEFFS(cm**3/s)
C                             1st DIMENSION: TEMPERATURE INDEX
C                             2nd DIMENSION: TRANSITION INDEX
C
C           (I*4)  NLTEM   = PARAMETER = MUST BE >= 'NDTEM'
C
C           (R*8)  TK2ATE  = PARAMETER = EQUATION CONSTANT = 1.5789D+05
C           (R*8)  R2GAM   = PARAMETER = EQUATION CONSTANT = 2.17161D-08
C
C           (I*4)  IC      = TRANSITION ARRAY INDEX
C           (I*4)  IT      = TEMPERATURE ARRAY INDEX
C
C           (R*8)  EUPPER  = SELECTED TRANSITION - UPPER ENERGY
C                            LEVEL RELATIVE TO INDEX LEVEL 1 (Rydbergs)
C           (R*8)  ELOWER  = SELECTED TRANSITION - LOWER ENERGY
C                            LEVEL RELATIVE TO INDEX LEVEL 1 (Rydbergs)
C           (R*8)  WUPPER  = SELECTED TRANSITION - UPPER ENERGY LEVEL
C                            STATISTICAL WEIGHT.
C           (R*8)  WLOWER  = SELECTED TRANSITION - LOWER ENERGY LEVEL
C                            STATISTICAL WEIGHT.
C           (R*8)  SUPPER  = 1/(UPPER LEVEL STATISTICAL WEIGHT)
C           (R*8)  SLOWER  = 1/(LOWER LEVEL STATISTICAL WEIGHT)
C           (R*8)  RYDDIF  = NEGATIVE TRANSITION ENERGY IN RYDBERGS
C                            ( NOTE: 1 Rydberg = 1.09737E5 cm-1)
C
C           (R*8)  ATE()   = EQUATION PARAMETER: DIMENSION - TEMPERATURE
C           (R*8)  GVAL()  = EQUATION PARAMETER (FOR UNIT GAMMA VALUE)
C                            DIMENSION - TEMPERATURE
C
C ROUTINES:  NONE
C
C NOTES:
C            EQUATIONS USED -
C
C                         2.17161E-8 x GAMMA x SQRT(157890 / TEMP)
C            RATE1 = -------------------------------------------------
C                    WLOWER x EXP( (EUPPER-ELOWER) * (157890 / TEMP) )
C
C                         2.17161E-8 x GAMMA x SQRT(157890 / TEMP)
C            DRATE1 =  ---------------------------------------------
C                                        WUPPER
C
C            NOTE: OUTPUT VALUES ARE FOR 'GAMMA=1'
C
C AUTHOR:  PAUL E. BRIDEN (TESSELLA SUPPORT SERVICES PLC)
C          K1/0/81
C          JET EXT. 4569
C
C DATE:    18/09/90
C
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      INTEGER             I1A(NDTRN),  I2A(NDTRN),  ICNT,        MAXT
      INTEGER             NDLEV,       NDTEM,       NDTRN
      REAL*8              DRATE1(NDTEM,NDTRN),      ER(NDLEV)
      REAL*8              RATE1(NDTEM,NDTRN),       TEMP(NDTEM)
      REAL*8              XJA(NDLEV)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk