Ignore:
Timestamp:
Dec 20, 2018 2:06:18 PM (3 years ago)
Author:
forkel
Message:

Bug fix of rate of eq.2 in simple.eqn and derived mechanisms, update of corresponding chem_gasphase_mod.f90

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_salsa+simple/chem_gasphase_mod.f90

    r3585 r3639  
    113113!
    114114! File                 : chem_gasphase_mod_Parameters.f90
    115 ! Time                 : Fri Nov 30 13:52:20 2018
    116 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     115! Time                 : Thu Dec 20 14:58:04 2018
     116! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    117117! Equation file        : chem_gasphase_mod.kpp
    118118! Output root filename : chem_gasphase_mod
     
    126126
    127127! NSPEC - Number of chemical species
    128   INTEGER, PARAMETER :: nspec = 15
     128  INTEGER, PARAMETER :: nspec = 14
    129129! NVAR - Number of Variable species
    130130  INTEGER, PARAMETER :: nvar = 13
     
    132132  INTEGER, PARAMETER :: nvaract = 11
    133133! NFIX - Number of Fixed species
    134   INTEGER, PARAMETER :: nfix = 2
     134  INTEGER, PARAMETER :: nfix = 1
    135135! NREACT - Number of reactions
    136136  INTEGER, PARAMETER :: nreact = 11
     
    173173
    174174  INTEGER, PARAMETER, PUBLIC :: ind_h2o = 14
    175   INTEGER, PARAMETER, PUBLIC :: ind_o2 = 15
    176175
    177176! Index declaration for fixed species in FIX
     
    179178
    180179  INTEGER, PARAMETER :: indf_h2o = 1
    181   INTEGER, PARAMETER :: indf_o2 = 2
    182180
    183181! NJVRP - Length of sparse Jacobian JVRP
     
    203201!
    204202! File                 : chem_gasphase_mod_Global.f90
    205 ! Time                 : Fri Nov 30 13:52:20 2018
    206 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     203! Time                 : Thu Dec 20 14:58:04 2018
     204! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    207205! Equation file        : chem_gasphase_mod.kpp
    208206! Output root filename : chem_gasphase_mod
     
    276274!
    277275! File                 : chem_gasphase_mod_JacobianSP.f90
    278 ! Time                 : Fri Nov 30 13:52:20 2018
    279 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     276! Time                 : Thu Dec 20 14:58:04 2018
     277! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    280278! Equation file        : chem_gasphase_mod.kpp
    281279! Output root filename : chem_gasphase_mod
     
    328326!
    329327! File                 : chem_gasphase_mod_Monitor.f90
    330 ! Time                 : Fri Nov 30 13:52:20 2018
    331 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     328! Time                 : Thu Dec 20 14:58:04 2018
     329! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    332330! Equation file        : chem_gasphase_mod.kpp
    333331! Output root filename : chem_gasphase_mod
     
    339337
    340338
    341   CHARACTER(len=15), PARAMETER, DIMENSION(15):: spc_names =  (/ &
     339  CHARACTER(len=15), PARAMETER, DIMENSION(14):: spc_names =  (/ &
    342340     'H2SO4          ','NH3            ','OCNV           ',&
    343341     'OCSV           ','HNO3           ','RCHO           ',&
    344342     'RH             ','O3             ','OH             ',&
    345343     'NO2            ','NO             ','HO2            ',&
    346      'RO2            ','H2O            ','O2             ' /)
     344     'RO2            ','H2O            ' /)
    347345
    348346  CHARACTER(len=100), PARAMETER, DIMENSION(11):: eqn_names =  (/ &
    349347     '     NO2 --> O3 + NO                                                                                ',&
    350      '      O3 --> 2 OH + O2                                                                              ',&
     348     'O3 + H2O --> 2 OH                                                                                   ',&
    351349     ' O3 + NO --> NO2                                                                                    ',&
    352350     ' RH + OH --> RO2 + H2O                                                                              ',&
     
    402400!
    403401! File                 : chem_gasphase_mod_Initialize.f90
    404 ! Time                 : Fri Nov 30 13:52:20 2018
    405 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     402! Time                 : Thu Dec 20 14:58:04 2018
     403! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    406404! Equation file        : chem_gasphase_mod.kpp
    407405! Output root filename : chem_gasphase_mod
     
    428426!
    429427! File                 : chem_gasphase_mod_Integrator.f90
    430 ! Time                 : Fri Nov 30 13:52:20 2018
    431 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     428! Time                 : Thu Dec 20 14:58:04 2018
     429! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    432430! Equation file        : chem_gasphase_mod.kpp
    433431! Output root filename : chem_gasphase_mod
     
    486484!
    487485! File                 : chem_gasphase_mod_LinearAlgebra.f90
    488 ! Time                 : Fri Nov 30 13:52:20 2018
    489 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     486! Time                 : Thu Dec 20 14:58:04 2018
     487! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    490488! Equation file        : chem_gasphase_mod.kpp
    491489! Output root filename : chem_gasphase_mod
     
    513511!
    514512! File                 : chem_gasphase_mod_Jacobian.f90
    515 ! Time                 : Fri Nov 30 13:52:20 2018
    516 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     513! Time                 : Thu Dec 20 14:58:04 2018
     514! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    517515! Equation file        : chem_gasphase_mod.kpp
    518516! Output root filename : chem_gasphase_mod
     
    540538!
    541539! File                 : chem_gasphase_mod_Function.f90
    542 ! Time                 : Fri Nov 30 13:52:20 2018
    543 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     540! Time                 : Thu Dec 20 14:58:04 2018
     541! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    544542! Equation file        : chem_gasphase_mod.kpp
    545543! Output root filename : chem_gasphase_mod
     
    569567!
    570568! File                 : chem_gasphase_mod_Rates.f90
    571 ! Time                 : Fri Nov 30 13:52:20 2018
    572 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     569! Time                 : Thu Dec 20 14:58:04 2018
     570! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    573571! Equation file        : chem_gasphase_mod.kpp
    574572! Output root filename : chem_gasphase_mod
     
    595593!
    596594! File                 : chem_gasphase_mod_Util.f90
    597 ! Time                 : Fri Nov 30 13:52:20 2018
    598 ! Working directory    : /home/forkel-r/palmstuff/work/trunk20181130/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
     595! Time                 : Thu Dec 20 14:58:04 2018
     596! Working directory    : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm
    599597! Equation file        : chem_gasphase_mod.kpp
    600598! Output root filename : chem_gasphase_mod
     
    806804! Computation of equation rates
    807805  a(1) = rct(1) * v(10)
    808   a(2) = rct(2) * v(8)
     806  a(2) = rct(2) * v(8) * f(1)
    809807  a(3) = rct(3) * v(8) * v(11)
    810808  a(4) = rct(4) * v(7) * v(9)
     
    872870! Local variables
    873871! B - Temporary array
    874   REAL(kind=dp):: b(16)
     872  REAL(kind=dp):: b(17)
    875873
    876874! B(1) = dA(1)/dV(10)
    877875  b(1) = rct(1)
    878876! B(2) = dA(2)/dV(8)
    879   b(2) = rct(2)
    880 ! B(3) = dA(3)/dV(8)
    881   b(3) = rct(3) * v(11)
    882 ! B(4) = dA(3)/dV(11)
    883   b(4) = rct(3) * v(8)
    884 ! B(5) = dA(4)/dV(7)
    885   b(5) = rct(4) * v(9)
    886 ! B(6) = dA(4)/dV(9)
    887   b(6) = rct(4) * v(7)
    888 ! B(7) = dA(5)/dV(11)
    889   b(7) = rct(5) * v(13)
    890 ! B(8) = dA(5)/dV(13)
    891   b(8) = rct(5) * v(11)
    892 ! B(9) = dA(6)/dV(11)
    893   b(9) = rct(6) * v(12)
    894 ! B(10) = dA(6)/dV(12)
    895   b(10) = rct(6) * v(11)
    896 ! B(11) = dA(7)/dV(9)
    897   b(11) = rct(7) * v(10)
    898 ! B(12) = dA(7)/dV(10)
    899   b(12) = rct(7) * v(9)
    900 ! B(13) = dA(8)/dV(1)
    901   b(13) = rct(8)
    902 ! B(14) = dA(9)/dV(2)
    903   b(14) = rct(9)
    904 ! B(15) = dA(10)/dV(3)
    905   b(15) = rct(10)
    906 ! B(16) = dA(11)/dV(4)
    907   b(16) = rct(11)
     877  b(2) = rct(2) * f(1)
     878! B(4) = dA(3)/dV(8)
     879  b(4) = rct(3) * v(11)
     880! B(5) = dA(3)/dV(11)
     881  b(5) = rct(3) * v(8)
     882! B(6) = dA(4)/dV(7)
     883  b(6) = rct(4) * v(9)
     884! B(7) = dA(4)/dV(9)
     885  b(7) = rct(4) * v(7)
     886! B(8) = dA(5)/dV(11)
     887  b(8) = rct(5) * v(13)
     888! B(9) = dA(5)/dV(13)
     889  b(9) = rct(5) * v(11)
     890! B(10) = dA(6)/dV(11)
     891  b(10) = rct(6) * v(12)
     892! B(11) = dA(6)/dV(12)
     893  b(11) = rct(6) * v(11)
     894! B(12) = dA(7)/dV(9)
     895  b(12) = rct(7) * v(10)
     896! B(13) = dA(7)/dV(10)
     897  b(13) = rct(7) * v(9)
     898! B(14) = dA(8)/dV(1)
     899  b(14) = rct(8)
     900! B(15) = dA(9)/dV(2)
     901  b(15) = rct(9)
     902! B(16) = dA(10)/dV(3)
     903  b(16) = rct(10)
     904! B(17) = dA(11)/dV(4)
     905  b(17) = rct(11)
    908906
    909907! Construct the Jacobian terms from B's
     
    919917  jvs(5) = 0
    920918! JVS(6) = Jac_FULL(5,9)
    921   jvs(6) = b(11)
     919  jvs(6) = b(12)
    922920! JVS(7) = Jac_FULL(5,10)
    923   jvs(7) = b(12)
     921  jvs(7) = b(13)
    924922! JVS(8) = Jac_FULL(6,6)
    925923  jvs(8) = 0
    926924! JVS(9) = Jac_FULL(6,11)
    927   jvs(9) = b(7)
     925  jvs(9) = b(8)
    928926! JVS(10) = Jac_FULL(6,13)
    929   jvs(10) = b(8)
     927  jvs(10) = b(9)
    930928! JVS(11) = Jac_FULL(7,7)
    931   jvs(11) = - b(5)
     929  jvs(11) = - b(6)
    932930! JVS(12) = Jac_FULL(7,9)
    933   jvs(12) = - b(6)
     931  jvs(12) = - b(7)
    934932! JVS(13) = Jac_FULL(8,8)
    935   jvs(13) = - b(2) - b(3)
     933  jvs(13) = - b(2) - b(4)
    936934! JVS(14) = Jac_FULL(8,10)
    937935  jvs(14) = b(1)
    938936! JVS(15) = Jac_FULL(8,11)
    939   jvs(15) = - b(4)
     937  jvs(15) = - b(5)
    940938! JVS(16) = Jac_FULL(9,7)
    941   jvs(16) = - b(5)
     939  jvs(16) = - b(6)
    942940! JVS(17) = Jac_FULL(9,8)
    943941  jvs(17) = 2* b(2)
    944942! JVS(18) = Jac_FULL(9,9)
    945   jvs(18) = - b(6) - b(11)
     943  jvs(18) = - b(7) - b(12)
    946944! JVS(19) = Jac_FULL(9,10)
    947   jvs(19) = - b(12)
     945  jvs(19) = - b(13)
    948946! JVS(20) = Jac_FULL(9,11)
    949   jvs(20) = b(9)
     947  jvs(20) = b(10)
    950948! JVS(21) = Jac_FULL(9,12)
    951   jvs(21) = b(10)
     949  jvs(21) = b(11)
    952950! JVS(22) = Jac_FULL(10,8)
    953   jvs(22) = b(3)
     951  jvs(22) = b(4)
    954952! JVS(23) = Jac_FULL(10,9)
    955   jvs(23) = - b(11)
     953  jvs(23) = - b(12)
    956954! JVS(24) = Jac_FULL(10,10)
    957   jvs(24) = - b(1) - b(12)
     955  jvs(24) = - b(1) - b(13)
    958956! JVS(25) = Jac_FULL(10,11)
    959   jvs(25) = b(4) + b(7) + b(9)
     957  jvs(25) = b(5) + b(8) + b(10)
    960958! JVS(26) = Jac_FULL(10,12)
    961   jvs(26) = b(10)
     959  jvs(26) = b(11)
    962960! JVS(27) = Jac_FULL(10,13)
    963   jvs(27) = b(8)
     961  jvs(27) = b(9)
    964962! JVS(28) = Jac_FULL(11,8)
    965   jvs(28) = - b(3)
     963  jvs(28) = - b(4)
    966964! JVS(29) = Jac_FULL(11,10)
    967965  jvs(29) = b(1)
    968966! JVS(30) = Jac_FULL(11,11)
    969   jvs(30) = - b(4) - b(7) - b(9)
     967  jvs(30) = - b(5) - b(8) - b(10)
    970968! JVS(31) = Jac_FULL(11,12)
    971   jvs(31) = - b(10)
     969  jvs(31) = - b(11)
    972970! JVS(32) = Jac_FULL(11,13)
    973   jvs(32) = - b(8)
     971  jvs(32) = - b(9)
    974972! JVS(33) = Jac_FULL(12,11)
    975   jvs(33) = b(7) - b(9)
     973  jvs(33) = b(8) - b(10)
    976974! JVS(34) = Jac_FULL(12,12)
    977   jvs(34) = - b(10)
     975  jvs(34) = - b(11)
    978976! JVS(35) = Jac_FULL(12,13)
    979   jvs(35) = b(8)
     977  jvs(35) = b(9)
    980978! JVS(36) = Jac_FULL(13,7)
    981   jvs(36) = b(5)
     979  jvs(36) = b(6)
    982980! JVS(37) = Jac_FULL(13,9)
    983   jvs(37) = b(6)
     981  jvs(37) = b(7)
    984982! JVS(38) = Jac_FULL(13,10)
    985983  jvs(38) = 0
    986984! JVS(39) = Jac_FULL(13,11)
    987   jvs(39) = - b(7)
     985  jvs(39) = - b(8)
    988986! JVS(40) = Jac_FULL(13,12)
    989987  jvs(40) = 0
    990988! JVS(41) = Jac_FULL(13,13)
    991   jvs(41) = - b(8)
     989  jvs(41) = - b(9)
    992990     
    993991END SUBROUTINE jac_sp
     
    10171015
    10181016  rconst(1) = (phot(j_no2))
    1019   rconst(2) = (phot(j_o31d))
     1017  rconst(2) = (2.0_dp * 2.2e-10_dp * phot(j_o31d) / (arr2(1.9e+8_dp , -390.0_dp , temp)))
    10201018  rconst(3) = (arr2(1.80e-12_dp , 1370.0_dp , temp))
    10211019  rconst(4) = (arr2(2.00e-11_dp , 500.0_dp , temp))
Note: See TracChangeset for help on using the changeset viewer.