Search Site | Contact Details | FAQ

ADAS Subroutine cxqxl

      SUBROUTINE CXQXL ( MXNENG , MXNSHL , MXBEAM , NBEAM  ,
     &                   BMENA  , BMFRA  , NBOT   , NTOP   ,
     &                   NENRGY , ENRGYA , FRACLA , QTHEOR ,
     &                   RATE   , FTHEOR
     &                 )
C
C
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: CXQXL  *********************
C
C  PURPOSE:  USES THE INPUT DATASET TO CALCULATE THE CHARGE EXCHANGE
C            RATE COEFFICIENTS FOR NL-LEVELS AVERAGED OVER THE BEAM
C            FRACTIONS. RATES ARE EXPRESSED AS A FRACTION OF
C            CORRESPONDING N-LEVEL.
C
C  CALLING PROGRAM: ADAS308
C
C  INPUT : (I*4)  MXNENG    = MAXIMUM NO. OF ENERGIES.
C  INPUT : (I*4)  MXNSHL    = MAXIMUM NO. OF N 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)  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)  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  INPUT : (R*8)  QTHEOR()  = MEAN RATE COEFFICIENTS FOR N-LEVELS
C                             AVERAGED OVER BEAM FRACTIONS.
C                             UNITS: CM3 SEC-1
C                             DIMENSION: REFERENCED BY N QUANTUM NUMBER.
C  INPUT : (R*8)  RATE(,)   = RATE COEFFICIENTS FOR EACH COMPONENT OF
C                             THE BEAM AS A FUNCTION OF N-LEVEL.
C                             UNITS: CM3 SEC-1
C                             1ST DIMENSION: BEAM INDEX
C                             2ND DIMENSION: N-SHELL
C
C  INPUT : (R*8)  FTHEOR()  = 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  PARAM : (I*4)  MXN       = 'MXNSHL'.
C
C          (I*4)  IB        = BEAM INDEX.
C          (I*4)  N         = PRINCIPAL QUANTUM NUMBER.
C          (I*4)  IE        = ENERGY INDEX.
C          (I*4)  IEU       = ENERGY INDEX ABOVE BEAM ENERGY.
C          (I*4)  IEL       = ENERGY INDEX BELOW BEAM ENERGY.
C          (I*4)  IDL       = LOOP INDEX.
C
C          (R*8)  GRAD      = GRADIENT OF STRAIGHT LINE INTERPOLATION.
C
C          (L*4)  LMATCH    = FLAG IF BEAM ENERGY MATCHES EXACTLY A DATA
C                             SET ENERGY.
C                           = .TRUE.  => BEAM ENERGY MATCHES.
C                           = .FALSE. => BEAM ENERGY DOES NOT MATCH.
C
C          (R*8)  PTH()     = RATE COEFFICIENTS FOR NL-LEVELS FOR A
C                             PATICULAR BEAM COMPONENT.
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 THE QUANTUM
C                               NUMBERS N AND L.
C
C AUTHOR:  JONATHAN NASH (TESSELLA SUPPORT SERVICES PLC)
C          K1/0/81
C          JET EXT. 5183
C
C DATE:    19/10/93
C
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      INTEGER             MXBEAM,      MXNENG,      MXNSHL,      NBEAM
      INTEGER             NBOT,        NENRGY,      NTOP
      REAL*8              BMENA(MXBEAM),            BMFRA(MXBEAM)
      REAL*8              ENRGYA(MXNENG)
      REAL*8              FRACLA(MXNENG,(MXNSHL*(MXNSHL+1))/2)
      REAL*8              FTHEOR((MXNSHL*(MXNSHL+1))/2)
      REAL*8              QTHEOR(MXNSHL),           RATE(MXBEAM,MXNSHL)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk