Search Site | Contact Details | FAQ

ADAS Subroutine d6mpop

       SUBROUTINE D6MPOP( NTDIM  , IZDIMD , IPDIMD , IMDIMD ,
     &                    NSTAGE , ITMAX  , NPRT   , NMSUM  ,
     &                    ACDA   , SCDA   , CCDA   , QCDA   , XCDA   ,
     &                    DENS   , DENSH  ,
     &                    FABUN0 ,
     &                    ITEM   , TIMEF  ,
     &                    POPE   , POPF   , PINTE  , PINTF
     &                   )
C
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN 77 SUBROUTINE: D6MPOP ********************
C
C  PURPOSE: CALCULATION OF METASTABLE RESOLVED IONISATION STAGE
C           POPULATIONS OF A PARTICULAR ELEMENT FOR A GIVEN TEMPERATURE
C           AND DENSITY
C
C  CALLING PROGRAM: ADAS405
C
C  SUBROUTINE:
C
C
C INPUT :(I*4) NTDIM         = MAXIMUM NUMBER OF MODEL TEMPS/DENSITIES
C INPUT :(I*4) IZDIMD        = MAXIMUM NUMBER OF STAGES-1
C INPUT :(I*4) IPDIMD        = MAXIMUM SIZE OF METASTABLES FRO A STAGE
C INPUT :(I*4) IMDIMD        = MAXIMUM NUMBER OF POPULATIONS
C INPUT :(I*4) NSTAGE        = NUMBER OF STAGES-1
C INPUT :(I*4) ITMAX         = NUMBER OF MODEL TEMPS/DENSITIES
C INPUT :(R*8) NPRT( )       = PARTITION OF TOTAL METASTABLES ACCORDING
C                              TO IONISATION STAGES
C                              1ST DIM: STAGE INDEX
C INPUT :(I*4) NMSUM         = TOTAL NUMBER OF POPULATIONS
C INPUT :(R*8) ACDA(,,,)     = GENERALISED CR RECOMBINATION COEFFICIENT
C                              1ST DIM: TEMPERATURE INDEX
C                              2ND DIM: STAGE INDEX (LESS 1)
C                              3RD DIM: METASTABLE INDEX
C                              4TH DIM: METASTABLE INDEX
C INPUT :(R*8) SCDA(,,,)     = GENERALISED CR IONISATION COEFFICIENT
C                              1ST DIM: TEMPERATURE INDEX
C                              2ND DIM: STAGE INDEX (LESS 1)
C                              3RD DIM: METASTABLE INDEX
C                              4TH DIM: METASTABLE INDEX
C INPUT :(R*8) CCDA(,,,)     = GENERALISED CR CHARGE EXCH. COEFFICIENT
C                              1ST DIM: TEMPERATURE INDEX
C                              2ND DIM: STAGE INDEX (LESS 1)
C                              3RD DIM: METASTABLE INDEX
C                              4TH DIM: METASTABLE INDEX
C INPUT :(R*8) QCDA(,,,)     = GENERALISED CR CROSS-COUPL. COEFFICIENT
C                              1ST DIM: TEMPERATURE INDEX
C                              2ND DIM: STAGE INDEX (LESS 1)
C                              3RD DIM: METASTABLE INDEX
C                              4TH DIM: METASTABLE INDEX
C INPUT :(R*8) XCDA(,,,)     = GENERALISED CR PARENT X-CP. COEFFICIENT
C                              1ST DIM: TEMPERATURE INDEX
C                              2ND DIM: STAGE INDEX (LESS 1)
C                              3RD DIM: METASTABLE INDEX
C                              4TH DIM: METASTABLE INDEX
C INPUT :(R*8) DENS()        = ELECTRON DENSITIES FOR MODEL
C                              1ST DIM: TEMPERATURE INDEX
C INPUT :(R*8) DENSH()       = NEUTRAL HYDROGEN DENSITIES FOR MODEL
C                              1ST DIM: TEMPERATURE INDEX
C
C INPUT :(R*8) FABUN0()      = INITIAL POPULATION ABUNDANCES AT TIME = 0
C                              1ST DIM: POPULATION INDEX
C
C INPUT :(I*4) ITEM          = CURRENT TEMP/DENSITY INDEX
C INPUT :(R*8) TIMEF         = INTEGRATION TIME (SEC)
C
C OUTPUT:(R*8) POPE()        = IONISATION BALANCE POPULATIONS
C OUTPUT:(R*8) POPF()        = POPULATIONS AT T = TIMEF
C OUTPUT:(R*8) PINTE()       = POPULATION EXCESS INTEGRAL TO T = INFIN.
C OUTPUT:(R*8) PINTF()       = POPULATION EXCESS INTEGRAL TO T = TIMEF
C
C        (I*4) ISTATE        = STAGE INDEX
C        (I*4) ITEM          = GENERAL INDEX
C        (I*4) I             = GENERAL INDEX
C        (I*4) J             = GENERAL INDEX
C        (I*4) K             = GENERAL INDEX
C        (R*8) FV1()         = WORK ARRAY USED BY XXEIGN
C        (I*4) IV1()         = WORK ARRAY USED BY XXEIGN
C
C  ROUTINES:
C           ROUTINE    SOURCE    BRIEF DESCRIPTION
C           ----------------------------------------------------------
C           D6MFLL     ADAS      FILL UP IONIS./RECOM. MATRIX
C           XXEIGN     ADAS/NETLIB GENERAL MATRIX DIAGONALISATION
C           XXSIM      ADAS/NETLIB SIMULTANEOUS EQUATION SOLUTION
C
C
C  AUTHOR:  H. P. SUMMERS, JET
C           K1/1/57
C           JET EXT. 4941
C
C  DATE:    27/06/94
C
C UNIX-IDL PORT:
C
C AUTHOR:  WILLIAM OSBORN (TESSELLA SUPPORT SERVICES PLC)
C
C DATE:    07/06/96
C
C VERSION: 1.1				     DATE:07/06/96
C MODIFIED: WILLIAM OSBORN
C	    - FIRST VERSION
C VERSION: 1.2				     DATE:27/06/96
C MODIFIED: WILLIAM OSBORN
C	    - REMOVED UNUSED VARIABLES
C VERSION: 1.3				     DATE:13/09/96
C MODIFIED: WILLIAM OSBORN
C	    - CHANGED PARAMETERS OF XXSIM IN LINE WITH CHANGES FOR
C             NON-SQUARE MATRICES.
C		
C VERSION: 1.4				DATE: 13/05/2004
C MODIFIED: Martin O'Mullane
C		- Increased NMDIM to 83 to accommodate lead.
C
C-----------------------------------------------------------------------
      INTEGER             IMDIMD,      IPDIMD,      ITEM,        ITMAX
      INTEGER             IZDIMD,      NMSUM,       NPRT(IZDIMD)
      INTEGER             NSTAGE,      NTDIM
      REAL*8              ACDA(NTDIM,IZDIMD,IPDIMD,IPDIMD)
      REAL*8              CCDA(NTDIM,IZDIMD,IPDIMD,IPDIMD)
      REAL*8              DENS(NTDIM), DENSH(NTDIM)
      REAL*8              FABUN0(IMDIMD),           PINTE(IMDIMD)
      REAL*8              PINTF(IMDIMD),            POPE(IMDIMD)
      REAL*8              POPF(IMDIMD)
      REAL*8              QCDA(NTDIM,IZDIMD,IPDIMD,IPDIMD)
      REAL*8              SCDA(NTDIM,IZDIMD,IPDIMD,IPDIMD),      TIMEF
      REAL*8              XCDA(NTDIM,IZDIMD,IPDIMD,IPDIMD)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk