Search Site | Contact Details | FAQ

ADAS Subroutine d5spec

       SUBROUTINE D5SPEC( LRSPEC ,
     &                    NDLINE , NDCOMP  , NDRAT  , NDFILE ,
     &                    NFILE  , LFILE   ,
     &                    UID    , GROUP   , TYPE   , EXT    ,
     &                    IZ0    , DSPECA  ,
     &                    NLINE  , NCOMP   ,
     &                    IZION  , IMET    , CIMET  , INDPH  ,
     &                    IFILE  ,
     &                    NTDIM  , ITMAX  ,
     &                    TEIN   , DEIN    , THIN   , DHIN   ,
     &                    PECA   ,
     &                    LPEC   , LTRNG   , LDRNG
     &                  )
C-----------------------------------------------------------------------
C
C  ****************** FORTRAN77 SUBROUTINE: D5SPEC  ********************
C
C  PURPOSE: TO CALCULATE PHOTON EMISSIVITY COEFFICIENTS FOR
C           SPECTRAL LINES IDENTIFIED IN SCRIPT FILE
C
C  CALLING PROGRAM: ADAS405
C
C  SUBROUTINE:
C
C  INPUT : (I*4)   NDLINE   = MAXIMUM NUMBER OF LINES ALLOWED
C  INPUT : (I*4)   NDCOMP   = MAXIMUM NUMBER OF COMPONENT FOR EACH LINE
C  INPUT : (I*4)   NDRAT    = MAXIMUM NUMBER OF LINE RATIOS ALLOWED
C  INPUT : (I*4)   NDFILE   = MAXIMUM NUMBER OF EMISSIVITY FILES WHICH
C                             CAN BE SEARCHED
C  INPUT : (I*4)   NFILE    = NUMBER OF PEC FILES TO BE SCANNED
C  INPUT : (L*4)   LFILE()  = .TRUE.  => PEC FILE EXISTS AND MATCHES
C                             .FALSE. => PEC FILE DOES NOT EXIST/MATCH
C  INPUT : (C*6)   UID()    = USER IDENTIFIER OF PEC FILE
C  INPUT : (C*8)   GROUP()  = GROUP IDENTIFIER OF PEC FILE
C  INPUT : (C*5)   TYPE()   = TYPE IDENTIFIER OF PEC FILE
C  INPUT : (C*3)   EXT()    = EXTENSION OF PEC FILE MEMBER NAME
C  INPUT : (I*4)   IZ0      = NUCLEAR CHARGE OF IMPURITY
C  INPUT : (C*120)DSPECA()  = PHOTON EMISSIVITY SOURCE FILES
C  INPUT : (I*4)   NLINE    = NUMBER OF LINES IDENTIFIED IN SCRIPT
C  INPUT : (I*4)   NCOMP()  = NUMBER OF COMPONENTS OF SCRIPT LINE
C                             1ST DIM: LINE INDEX
C  INPUT : (I*4)   IZION(,) = CHARGE STATE OF COMPONENT
C                             1ST DIM: LINE INDEX
C                             2ND DIM: COMPONENT INDEX
C  INPUT : (I*4)   IMET(,)  = NUMBER OF COMPONENTS OF SCRIPT LINE
C                             1ST DIM: LINE INDEX
C                             2ND DIM: COMPONENT INDEX
C  INPUT : (C*1)   CIMET(,) = SIGN (+, BLANK OR -) OF METASTABLE
C                             1ST DIM: LINE INDEX
C                             2ND DIM: COMPONENT INDEX
C  INPUT : (I*4)   INDPH(,) = PEC FILE INDEX OF LINE COMPONENT
C                             1ST DIM: LINE INDEX
C                             2ND DIM: COMPONENT INDEX
C  INPUT : (I*4)   IFILE(,) = INDEX OF PEC FILE IN FILE LIST
C                             1ST DIM: LINE INDEX
C                             2ND DIM: COMPONENT INDEX
C  INPUT : (I*4)   NTDIM    = MAXIMUM NUMBER OF TEMP/DENSITY SETS
C  INPUT : (I*4)   ITMAX    = NUMBER OF TEMP/DENSITY SETS
C  INPUT : (R*8)   TEIN()   = ELECTRON TEMPERATURES (EV)
C  INPUT : (R*8)   DEIN()   = ELECTRON DENSITIES (CM-3)
C  INPUT : (R*8)   THIN()   = HYDROGEN TEMPERATURES (EV)
C  INPUT : (R*8)   DHIN()   = HYDROGEN DENSITIES (CM-3)
C
C  OUTPUT: (L*4)   LRSPEC   = .TRUE.  => PEC PROCESSING DONE
C                             .FALSE. => PEC PROCESSING NOT DONE
C  OUTPUT: (R*8)   PECA(,,) = PHOTON EMISSIVITY COEFFICIENTS (CM3 S-1)
C                             1ST DIM: TEMPERATURE INDEX
C                             2ND DIM: LINE INDEX
C                             3RD DIM: COMPONENT INDEX
C  OUTPUT: (L*4)   LPEC(,)  = .TRUE.  => PHOTON EMISSIVITY OBTAINED
C                             .FALSE. => PHOTON EMISSIVITY NOT OBTAINED
C                             2ND DIM: LINE INDEX
C                             3RD DIM: COMPONENT INDEX
C
C          (I*4)   IUNT10  = PARAMETER = INPUT UNIT FOR DATA
C          (L*4)   OPEN10  = .TRUE.  => FILE ALLOCATED TO UNIT 10.
C                            .FALSE. => NO FILE ALLOCATED TO UNIT 10.
C
C ROUTINES:
C          ROUTINE   SOURCE   BRIEF DESCRIPTION
C          -----------------------------------------------------------
C	   D5SPC2   IDL-ADAS  OBTAIN PHOTON EMISSIVITY COEFFICIENT
C
C AUTHOR:  H. P. SUMMERS, JET
C          K1/1/57
C          JET EXT. 4941
C
C DATE:    20/04/94
C
C UNIX-IDL PORT:
C
C VERSION: 1.1                          DATE: 08-11-95
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C               - FIRST RELEASE
C
C VERSION: 1.2                          DATE: 08-11-95
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C               - REMOVED SUPERFLUOUS VARIABLES
C
C VERSION: 1.3                          DATE: 10-11-95
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C               - INCREASED LENGTH OF TITLX FROM 80 TO 120
C
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
      CHARACTER           CIMET(NDLINE,NDCOMP)
      CHARACTER*120       DSPECA(NDFILE)
      CHARACTER*3         EXT(NDFILE)
      CHARACTER*8         GROUP(NDFILE)
      CHARACTER*5         TYPE(NDFILE)
      CHARACTER*6         UID(NDFILE)
      INTEGER             IFILE(NDLINE,NDCOMP),     IMET(NDLINE,NDCOMP)
      INTEGER             INDPH(NDLINE,NDCOMP),     ITMAX,       IZ0
      INTEGER             IZION(NDLINE,NDCOMP),     NCOMP(NDLINE)
      INTEGER             NDCOMP,      NDFILE,      NDLINE,      NDRAT
      INTEGER             NFILE,       NLINE,       NTDIM
      LOGICAL             LDRNG(NTDIM),             LFILE(NDFILE)
      LOGICAL             LPEC(NDLINE,NDCOMP),      LRSPEC
      LOGICAL             LTRNG(NTDIM)
      REAL*8              DEIN(NTDIM), DHIN(NTDIM)
      REAL*8              PECA(NTDIM,NDLINE,NDCOMP)
      REAL*8              TEIN(NTDIM), THIN(NTDIM)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk