File: pick-dir/kinetic.f90

    1       MODULE KINETIC
    2       IMPLICIT NONE
    3 !
    4 ! PARAMETER definitions
    5 !
    6 !     JPWAVE: The total number of wavelength intervals for the photolysis calculations.
    7 !     JPSLEVALL: The total number of level edges for the photolysis calculations.
    8 !     JPSLEV: The total number of level centres for the photolysis calculations.
    9 !     JPSCHI: The total number of zenith angles for the photolysis calculations.
   10 !     JPSOVER: The zenith angles at > 90 degrees for the photolysis calculations.
   11 !     JPSCHIN: The index of the 90 degree zenith angle in the tabulations.
   12       INTEGER , PARAMETER :: JPWAVE = 203 , JPSLEVALL = 40 ,            &
   13                            & JPSLEV = JPSLEVALL - 1 , JPSCHI = 20 ,     &
   14                            & JPSOVER = 8 , JPSCHIN = JPSCHI - JPSOVER
   15 !
   16 !
   17 !------------------------------------------------------------------------
   18 !
   19 ! Derived Type definitions
   20 !
   21 !------------------------------------------------------------------------
   22 !
   23 !     Species name as it appears in the reaction data files and in LaTeX.
   24       TYPE SPEcies_record
   25          CHARACTER(25) :: LATEX
   26          CHARACTER(20) :: SPECI
   27          INTEGER :: ISPTYPE
   28       END TYPE SPEcies_record
   29 !
   30 !------------------------------------------------------------------------
   31 !
   32 !     Records for each reaction type.
   33       TYPE BIMolecular_record
   34          REAL :: ZK
   35          REAL :: A1 , A2 , A3 , A4 , A5
   36          REAL :: B1 , B2 , B3 , B4 , B5
   37          CHARACTER :: FLAG
   38          CHARACTER(20) , DIMENSION(14) :: P
   39          CHARACTER(20) , DIMENSION(2) :: RE
   40          REAL , DIMENSION(14) :: Z
   41          INTEGER :: IWANTP , IWANTR
   42          CHARACTER(200) :: COMMENT
   43       END TYPE BIMolecular_record
   44       TYPE TRImolecular_record
   45          REAL :: ZK
   46          REAL :: A1 , A2 , A3 , A4 , A5
   47          REAL :: B1 , B2 , B3 , B4 , B5
   48          REAL :: C1 , C2 , C3 , C4 , C5
   49          CHARACTER :: FLAG
   50          CHARACTER(20) , DIMENSION(14) :: P
   51          CHARACTER(20) , DIMENSION(2) :: RE
   52          REAL , DIMENSION(14) :: Z
   53          INTEGER :: IWANTP , IWANTR
   54          CHARACTER(200) :: COMMENT
   55       END TYPE TRImolecular_record
   56       TYPE PHOtolysis_record
   57          REAL :: ZK
   58          CHARACTER(20) , DIMENSION(14) :: P
   59          CHARACTER(20) , DIMENSION(2) :: RE
   60          REAL , DIMENSION(14) :: Z
   61          INTEGER :: IWANTP , IWANTR
   62          CHARACTER(200) :: COMMENT , ST_CROSS_DATA , ST_CROSS_FUN
   63       END TYPE PHOtolysis_record
   64       TYPE HETerogeneous_record
   65          REAL :: ZK
   66          REAL :: GAMMA , SIG , EPS , RM , ALPHA
   67          CHARACTER(20) , DIMENSION(14) :: P
   68          CHARACTER(20) , DIMENSION(2) :: RE
   69          INTEGER , DIMENSION(2) :: IR
   70          REAL , DIMENSION(14) :: Z
   71          INTEGER :: IWANTP , IWANTR , ISPTYPE
   72          CHARACTER(200) :: COMMENT , FUN
   73       END TYPE HETerogeneous_record
   74       TYPE UMOlecularheterogeneous_record
   75          REAL :: ZK
   76          REAL :: GAMMA , RM
   77          CHARACTER(20) , DIMENSION(14) :: P
   78          CHARACTER(20) , DIMENSION(2) :: RE
   79          INTEGER , DIMENSION(2) :: IR
   80          REAL , DIMENSION(14) :: Z
   81          INTEGER :: IWANTP , IWANTR , ISPTYPE
   82          CHARACTER(200) :: COMMENT , FUN
   83       END TYPE UMOlecularheterogeneous_record
   84       TYPE BULkbimolecular_record
   85          REAL :: ZK
   86          REAL :: A1 , A2
   87          CHARACTER(20) , DIMENSION(14) :: P
   88          CHARACTER(20) , DIMENSION(2) :: RE
   89          REAL , DIMENSION(14) :: Z
   90          INTEGER :: IWANTP , IWANTR , ISPTYPE
   91          CHARACTER(200) :: COMMENT
   92       END TYPE BULkbimolecular_record
   93       TYPE BULktransfer_record
   94          REAL :: ZK
   95          REAL :: A1 , A5 , A2 , SIG , EPS , RM , ALPHA
   96          CHARACTER(20) , DIMENSION(14) :: P
   97          CHARACTER(20) , DIMENSION(2) :: RE
   98          REAL , DIMENSION(14) :: Z
   99          INTEGER :: IWANTP , IWANTR , ISPTYPE
  100          CHARACTER(200) :: COMMENT , FUN
  101       END TYPE BULktransfer_record
  102       TYPE COSmicray_record
  103          REAL :: ZK
  104          REAL :: FORMRATEPERION
  105          CHARACTER(20) , DIMENSION(14) :: P
  106          CHARACTER(20) , DIMENSION(2) :: RE
  107          REAL , DIMENSION(14) :: Z
  108          INTEGER :: IWANTP , IWANTR
  109          CHARACTER(200) :: COMMENT
  110       END TYPE COSmicray_record
  111       TYPE REAction_record
  112          REAL :: ZK
  113          CHARACTER(20) , DIMENSION(14) :: P
  114          CHARACTER(20) , DIMENSION(2) :: RE
  115          CHARACTER(40) :: Description
  116          INTEGER , DIMENSION(2) :: IR
  117          REAL , DIMENSION(14) :: Z
  118          INTEGER :: IWANTP , IWANTR
  119          INTEGER :: IRT
  120          LOGICAL :: LFT , LFA
  121          REAL :: ZJACOB
  122          REAL , DIMENSION(7) :: ZKALL
  123       END TYPE REAction_record
  124 !
  125 !------------------------------------------------------------------------
  126 !
  127 !     Wavelength dependance information for photolysis data.
  128       TYPE PHOtolysiswave_record
  129          REAL , DIMENSION(JPWAVE) :: WAVE
  130          REAL , DIMENSION(JPWAVE) :: READ_CROSS , READ_Q
  131          REAL , DIMENSION(JPWAVE) :: USED_CROSS , USED_Q
  132       END TYPE PHOtolysiswave_record
  133 !
  134 !------------------------------------------------------------------------
  135 !
  136 !     Solar Irradiance record.
  137       TYPE SOLarirradiance_record
  138          CHARACTER(200) :: FNSOLAR
  139       END TYPE SOLarirradiance_record
  140 !
  141 !------------------------------------------------------------------------
  142 !
  143       END MODULE KINETIC