Search Site | Contact Details | FAQ

ADAS Subroutine c6qxch

      SUBROUTINE C6QXCH ( MXNENG , MXNSHL , MXJSHL , MXBEAM ,
     &                    NBEAM  , BMENA  , BMFRA  , NBOT   ,
     &                    NTOP   , NMINF  , NMAXF  , NENRGY ,
     &                    ENRGYA , ALPHAA , XSECNA , FRACLA ,
     &                    QTHCH  , FTHCHJ
     &                  )
C
C
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: C6QXCH *********************
C
C  PURPOSE:  USES THE INPUT DATASET TO CALCULATE THE CHARGE EXCHANGE
C            RATE COEFFICIENTS FOR BOTH N-LEVELS AND NLJ-LEVELS AVERAGED
C            OVER THE BEAM FRACTIONS.
C
C            NLJ-LEVEL RATES ARE EXPRESSED AS A FRACTION OF
C            CORRESPONDING N-LEVEL.
C
C  CALLING PROGRAM: ADAS306
C
C  INPUT : (I*4)  MXNENG    = MAXIMUM NO. OF ENERGIES.
C  INPUT : (I*4)  MXNSHL    = MAXIMUM NO. OF N SHELLS.
C  INPUT : (I*4)  MXJSHL    = MAXIMUM NO. OF J SUB-SHELLS.
C  INPUT : (I*4)  MXBEAM    = MAXIMUM NO. OF BEAM ENERGIES.
C  INPUT : (I*4)  NBEAM     = NUMBER OF BEAM ENERGIES.
C  INPUT : (R*8)  BMENA()   = BEAM ENERGY COMPONENTS.
C                             UNITS: EV/AMU
C                             DIMENSION: COMPONENT INDEX.
C  INPUT : (R*8)  BMFRA()   = BEAM COMPONENT FRACTIONS.
C                             DIMENSION: COMPONENT INDEX.
C  INPUT : (I*4)  NBOT      = MINIMUM PRINCIPAL QUANTUM NUMBER.
C  INPUT : (I*4)  NTOP      = MAXIMUM PRINCIPAL QUANTUM NUMBER.
C  INPUT : (I*4)  NMINF     = MINIMUM PRINCIPAL QUANTUM NUMBER OF INPUT
C                             DATASET.
C  INPUT : (I*4)  NMAXF     = MAXIMUM PRINCIPAL QUANTUM NUMBER OF INPUT
C                             DATASET.
C  INPUT : (I*4)  NENRGY    = NUMBER OF ENERGIES IN DATASET.
C  INPUT : (R*8)  ENRGYA()  = COLLISION ENERGIES.
C                             UNITS: EV/AMU
C                             DIMENSION: ENERGY INDEX
C  INPUT : (R*8)  ALPHAA()  = EXTRAPOLATION PARAMETER ALPHA.
C                             DIMENSION: ENERGY INDEX
C  INPUT : (R*8)  XSECNA(,) = N-RESOLVED CHARGE EXCHANGE CROSS-SECTIONS.
C                             UNITS: CM2
C                             1ST DIMENSION: ENERGY INDEX
C                             2ND DIMENSION: N-SHELL
C  INPUT : (R*8)  FRACLA(,) = L-RESOLVED CHARGE EXCHANGE CROSS-SECTIONS
C                             EXPRESSED AS FRACTION OF CORRESPONDING
C                             N-RESOLVED CROSS-SECTION.
C                             1ST DIMENSION: ENERGY INDEX
C                             2ND DIMENSION: REFERENCED BY I4IDFL(N,L)
C
C  OUTPUT: (R*8)  QTHCH()   = MEAN RATE COEFFICIENTS FOR N-LEVELS
C                             AVERAGED OVER BEAM FRACTIONS.
C                             UNITS: CM3 SEC-1
C                             DIMENSION: REFERENCED BY N QUANTUM NUMBER.
C  OUTPUT: (R*8)  FTHCHJ(,) = MEAN RATE COEFFICIENTS FOR NLJ-LEVELS
C                             AVERAGED OVER BEAM FRACTIONS. EXPRESSED AS
C                             FRACTIONS OF CORRESPONDING N-LEVELS.
C                             1ST DIMENSION: J SUB-SHELL
C                                            1 => J=L+0.5
C                                            2 => J=L-0.5
C                             2ND DIMENSION: REFERENCED BY I4IDFL(N,L)
C
C  PARAM : (I*4)  MXN       = 'MXNSHL'.
C
C          (I*4)  N         = N-SHELL INDEX.
C          (I*4)  L         = L-SHELL INDEX.
C          (I*4)  J         = J-SHELL INDEX.
C          (I*4)  IDL       = L-RESOLVED INDEX.
C
C          (R*8)  XL        = REAL VALUE = L.
C          (R*8)  WL        =
C
C          (R*8)  FTHCH()   = MEAN RATE COEFFICIENTS FOR NL-LEVELS
C                             AVERAGED OVER BEAM FRACTIONS. EXPRESSED AS
C                             FRACTIONS OF CORRESPONDING N-LEVELS.
C                             DIMENSION: REFERENCED BY I4IDFL(N,L)
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          CXQXCH     ADAS      CALCULATES N-LEVEL AND NL-LEVEL CHARGE
C                               EXCHANGE RATE COEFFICIENTS USING INPUT
C                               DATASET. NL RATES ARE GIVEN AS FRACTION
C                               OF CORRESPONDING N RATE.
C
C AUTHOR:  JONATHAN NASH (TESSELLA SUPPORT SERVICES PLC)
C          K1/0/81
C          JET EXT. 5183
C
C DATE:    22/10/93
C
C UNIX-IDL PORT:
C
C AUTHOR:  WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC)
C
C DATE:    22ND MAY 1996
C
C VERSION: 1.1                          DATE: 22-05-96
C MODIFIED: WILLIAM OSBORN
C               - FIRST VERSION. IBM VERSION NOT CHANGED
C
C VERSION: 1.2                          DATE: 17-05-07
C MODIFIED: Allan Whiteford
C               - Updated comments as part of subroutine documentation
C                 procedure.
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      INTEGER             MXBEAM,      MXJSHL,      MXNENG,      MXNSHL
      INTEGER             NBEAM,       NBOT,        NENRGY,      NMAXF
      INTEGER             NMINF,       NTOP
      REAL*8              ALPHAA(MXNENG),           BMENA(MXBEAM)
      REAL*8              BMFRA(MXBEAM),            ENRGYA(MXNENG)
      REAL*8              FRACLA(MXNENG,(MXNSHL*(MXNSHL+1))/2)
      REAL*8              FTHCHJ(MXJSHL,(MXNSHL*(MXNSHL+1))/2)
      REAL*8              QTHCH(MXNSHL)
      REAL*8              XSECNA(MXNENG,MXNSHL)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk