Search Site | Contact Details | FAQ

ADAS Subroutine bxstkb

      SUBROUTINE BXSTKB( NDTEM  , NDLEV  ,
     &                   IT     , NORD   ,
     &                            IORDR  ,
     &                   CMAT   , VEC    ,
     &                   STV
     &                 )
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: BXSTKA *********************
C
C  PURPOSE: TO STACK UP IN  'STV'  THE  RECOMBINATION CONTRIBUTION  FOR
C           EACH  NON-METASTABLE/ORDINARY  EXCITED  LEVEL  FOR  A GIVEN
C           TEMPERATURE AND DENSITY.
C
C  CALLING PROGRAM:  ADAS205/ADAS206
C
C  SUBROUTINE:
C
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)  IT      = INDEX DENOTING THE TEMPERATURE
C  INPUT :  (I*4)  NORD    = NUMBER OF ORDINARY EXCITED LEVELS
C
C  INPUT :  (I*4)  IORDR() =INDEX OF ORDINARY EXCITED LEVELS IN COMPLETE
C                            LEVEL LIST.
C                            (ARRAY SIZE = 'NDLEV' )
C
C  INPUT :  (R*8)  CMAT(,) = INVERTED   RATE   MATRIX   COVERING   ALL
C                            NON-METASTABLE/ORDINARY EXCITED LEVELS
C                            TRANSITIONS.
C                            (UNITS: SEC)
C                            VALUES FOR GIVEN TEMPERATURE AND DENSITY.
C                            1st DIMENSION: ORDINARY EXCITED LEVEL INDEX
C                            2nd DIMENSION: ORDINARY EXCITED LEVEL INDEX
C
C  INPUT :  (R*8)  VEC(,)  = RECOMBINATION RATE COEFFT. VALUES.
C                            (UNITS: CM**3/SEC-1)
C                            VALUES FOR GIVEN TEMPERATURE AND DENSITY.
C                            1st DIMENSION: TEMPERATURE INDEX ('IT')
C                            2nd DIMENSION: CAPTURING LEVEL INDEX
C
C  OUTPUT:  (R*8)  STV()   = RECOMBINATION  CONTRIBUTION  FOR  EACH
C                            NON-METASTABLE/ORDINARY EXCITED LEVELS.
C                            (UNITS: CM**3)
C                            VALUES FOR GIVEN TEMPERATURE AND DENSITY.
C                            DIMENSION: ORDINARY EXCITED LEVEL INDEX
C
C           (I*4)  IS1     = ORDINARY EXCITED LEVEL INDEX
C           (I*4)  IS2     = ORDINARY EXCITED LEVEL INDEX
C
C           (R*8)  COEF    = VARIABLE USED TO SUM COEFFICIENT VALUES
C
C
C ROUTINES: NONE
C
C NOTE:
C        IF:     n  =  number of ordinary/non-metastable levels
C            R(nxn) = Rate matrix (SEC-1) covering transistions between
C                     all possible pairs of ordinary levels.
C                     row   : final   level
C                     column: initial level
C                     (Inverse R-1(nxn) = 'CMAT(,)' )
C            V(n)   = Recombination rate vector (CM**3 SEC-1) covering
C                     all ordinary levels.
C                     ( = 'VEC()' - ordinary level part ).
C            S(n)   = Recombination contribution vector (CM**3) covering
C                     all ordinary levels ( = 'STV()' ).
C
C           Therefore:  R(nxn).S(n) = V(n)
C
C            =>         S(n)  = R-1(nxn).V(n)
C
C
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-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      INTEGER             IORDR(NDLEV),             IT,          NDLEV
      INTEGER             NDTEM,       NORD
      REAL*8              CMAT(NDLEV,NDLEV),        STV(NDLEV)
      REAL*8              VEC(NDTEM,NDLEV)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk