Search Site | Contact Details | FAQ

ADAS Subroutine cxmrdg

      SUBROUTINE CXMRDG ( MXNSHL , MXJSHL , IZ0    , IZ1    ,
     &                    AMSSNO , NI     , LI     , NJ     ,
     &                    LJ     , BMAG   , TIEV   , TBLF   ,
     &                    FMP    , FMM    , FMI    , FMJ
     &                  )
C
C
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: CXMRDG *********************
C
C  PURPOSE:  CALCULATES MAGNETIC FIELD DEPENDENT MIXING RATE
C            COEFFICIENTS BETWEEN NEARLY DEGENERATE LEVELS FOR
C            HYDROGEN-LIKE, LITHIUM-LIKE AND SODIUM-LIKE IONS.
C
C            RATES ARE CALCULATED FOR THE SEPARATE
C            NLJ->NL+1J', NLJ->NLJ' AND NLJ->NL-1J'
C            TRANSITIONS.
C
C  CALLING PROGRAM: C6TBFM
C
C  INPUT : (I*4)  MXNSHL  = MAXIMUM NUMBER OF N SHELLS.
C  INPUT : (I*4)  MXJSHL  = MAXIMUM NUMBER OF J SUB-SHELLS.
C  INPUT : (I*4)  IZ0     = TARGET NUCLEAR CHARGE.
C  INPUT : (I*4)  IZ1     = ION CHARGE.
C  INPUT : (R*8)  AMSSNO  = ATOMIC MASS NO.
C  INPUT : (I*4)  NI      = VALENCE ELECTRON PRINCIPAL QUANTUM NUMBER
C                           IN STATE I.
C  INPUT : (I*4)  LI      = VALENCE ELECTRON ORBITAL QUANTUM NUMBER IN
C                           STATE I.
C  INPUT : (I*4)  NJ      = VALENCE ELECTRON PRINCIPAL QUANTUM NUMBER
C                           IN STATE J.
C  INPUT : (I*4)  LJ      = VALENCE ELECTRON ORBITAL QUANTUM NUMBER IN
C                           STATE J.
C  INPUT : (R*8)  BMAG    = MAGNETIC INDUCTION.
C                           UNITS: TESLA
C  INPUT : (R*8)  TIEV    = TEMPERATURE (ION DISTRIBUTION).
C                           UNITS: EV
C  INPUT : (R*8)  TBLF()  = TABLE OF RADIATIVE LIFETIMES.
C                           UNITS: SECS
C                           DIMENSION: REFERENCED BY FUNC I4IDFL(N,L).
C
C  OUTPUT: (R*8)  FMP()   = RATE COEFFT. FOR NLJ->NL+1J'.
C                           DIMENSION: J->J' TRANSITION INDEX.
C  OUTPUT: (R*8)  FMM()   = RATE COEFFT. FOR NLJ->NL+1J'.
C                           DIMENSION: J->J' TRANSITION INDEX.
C  OUTPUT: (R*8)  FMI()   = RATE COEFFT. FOR NLJ->NLJ' FOR STATE I.
C                           DIMENSION: J->J' TRANSITION INDEX.
C  OUTPUT: (R*8)  FMJ()   = RATE COEFFT. FOR NLJ->NLJ' FOR STATE J.
C                           DIMENSION: J->J' TRANSITION INDEX.
C
C  PARAM : (I*4)  MXTERM  = 2.
C  PARAM : (R*8)  P1      =
C
C          (I*4)  ICI     =
C          (I*4)  ICJ     =
C          (I*4)  I       = LOOP INDEX.
C          (I*4)  J       = LOOP INDEX.
C
C          (R*8)  Z1      = REAL VALUE = IZ1.
C          (R*8)  TI      = TEMPERATURE (ION DISTRIBUTION).
C                           UNITS:
C          (R*8)  XNI     = REAL VALUE = NI.
C          (R*8)  XLI     = REAL VALUE = LI.
C          (R*8)  XLJ     = REAL VALUE = LJ.
C          (R*8)  XLG     =
C          (R*8)  FACT1   =
C          (R*8)  FACT2   =
C          (R*8)  EI0     = BINDING ENERGY FOR STATE I.
C                           UNITS: RYD
C          (R*8)  EJ0     = BINDING ENERGY FOR STATE J.
C                           UNITS: RYD
C          (R*8)  ZEFFI   = EFFECTIVE ION CHARGE FOR STATE I.
C          (R*8)  ZEFFJ   = EFFECTIVE ION CHARGE FOR STATE J.
C          (R*8)  TAUI    = RADIATIVE LIFETIME FOR STATE I.
C                           UNITS: SECS
C          (R*8)  TAUJ    = RADIATIVE LIFETIME FOR STATE J.
C                           UNITS: SECS
C          (R*8)  TAU     =
C          (R*8)  XS      =
C          (R*8)  XXJI    =
C          (R*8)  XXJJ    =
C          (R*8)  DE      =
C          (R*8)  W       =
C          (R*8)  T1      =
C          (R*8)  T2      =
C          (R*8)  T3      =
C          (R*8)  F1      =
C          (R*8)  F2      =
C
C          (R*8)  XSI()   =
C                           DIMENSION: 2
C          (R*8)  XJI()   =
C                           DIMENSION: 2
C          (R*8)  XEI()   =
C                           DIMENSION: 2
C          (R*8)  XSJ()   =
C                           DIMENSION: 2
C          (R*8)  XJJ()   =
C                           DIMENSION: 2
C          (R*8)  XEJ()   =
C                           DIMENSION: 2
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          R8ZETA     ADAS
C          R8WIG6     ADAS
C          CXHYDE     ADAS      CALCULATES BINDING ENERGY FOR H-LIKE
C                               ION.
C          CXLTHE     ADAS      CALCULATES BINDING ENERGY FOR LI-LIKE
C                               ION.
C          CXSODE     ADAS      CALCULATES BINDING ENERGY FOR NA-LIKE
C                               ION.
C
C NOTES:
C       1) THE J->J' TRANSITION INDEX IS AS FOLLOWS:
C              1 : J=L+0.5 -> J'=L'+0.5
C              2 : J=L+0.5 -> J'=L'-0.5
C              3 : J=L-0.5 -> J'=L'+0.5
C              4 : J=L-0.5 -> J'=L'-0.5
C
C AUTHOR:  JONATHAN NASH (TESSELLA SUPPORT SERVICES PLC)
C          K1/0/81
C          JET EXT. 5183
C
C DATE:    04/11/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             IZ0,         IZ1,         LI,          LJ
      INTEGER             MXJSHL,      MXNSHL,      NI,          NJ
      REAL*8              AMSSNO,      BMAG,        FMI(2*MXJSHL)
      REAL*8              FMJ(2*MXJSHL),            FMM(2*MXJSHL)
      REAL*8              FMP(2*MXJSHL)
      REAL*8              TBLF((MXNSHL*(MXNSHL+1))/2),           TIEV
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk