- Timestamp:
- Dec 20, 2018 2:06:18 PM (6 years ago)
- Location:
- palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simple
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simple/chem_gasphase_mod.f90
r3606 r3639 113 113 ! 114 114 ! File : chem_gasphase_mod_Parameters.f90 115 ! Time : Fri Dec 7 12:47:102018116 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm115 ! Time : Thu Dec 20 14:57:44 2018 116 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 117 117 ! Equation file : chem_gasphase_mod.kpp 118 118 ! Output root filename : chem_gasphase_mod … … 126 126 127 127 ! NSPEC - Number of chemical species 128 INTEGER, PARAMETER :: nspec = 1 1128 INTEGER, PARAMETER :: nspec = 10 129 129 ! NVAR - Number of Variable species 130 130 INTEGER, PARAMETER :: nvar = 9 … … 132 132 INTEGER, PARAMETER :: nvaract = 7 133 133 ! NFIX - Number of Fixed species 134 INTEGER, PARAMETER :: nfix = 2134 INTEGER, PARAMETER :: nfix = 1 135 135 ! NREACT - Number of reactions 136 136 INTEGER, PARAMETER :: nreact = 7 … … 169 169 170 170 INTEGER, PARAMETER, PUBLIC :: ind_h2o = 10 171 INTEGER, PARAMETER, PUBLIC :: ind_o2 = 11172 171 173 172 ! Index declaration for fixed species in FIX … … 175 174 176 175 INTEGER, PARAMETER :: indf_h2o = 1 177 INTEGER, PARAMETER :: indf_o2 = 2178 176 179 177 ! NJVRP - Length of sparse Jacobian JVRP … … 199 197 ! 200 198 ! File : chem_gasphase_mod_Global.f90 201 ! Time : Fri Dec 7 12:47:102018202 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm199 ! Time : Thu Dec 20 14:57:44 2018 200 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 203 201 ! Equation file : chem_gasphase_mod.kpp 204 202 ! Output root filename : chem_gasphase_mod … … 266 264 ! 267 265 ! File : chem_gasphase_mod_JacobianSP.f90 268 ! Time : Fri Dec 7 12:47:102018269 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm266 ! Time : Thu Dec 20 14:57:44 2018 267 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 270 268 ! Equation file : chem_gasphase_mod.kpp 271 269 ! Output root filename : chem_gasphase_mod … … 316 314 ! 317 315 ! File : chem_gasphase_mod_Monitor.f90 318 ! Time : Fri Dec 7 12:47:102018319 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm316 ! Time : Thu Dec 20 14:57:44 2018 317 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 320 318 ! Equation file : chem_gasphase_mod.kpp 321 319 ! Output root filename : chem_gasphase_mod … … 327 325 328 326 329 CHARACTER(len=15), PARAMETER, DIMENSION(1 1):: spc_names = (/ &327 CHARACTER(len=15), PARAMETER, DIMENSION(10):: spc_names = (/ & 330 328 'HNO3 ','RCHO ','RH ',& 331 329 'HO2 ','RO2 ','OH ',& 332 330 'NO2 ','O3 ','NO ',& 333 'H2O ' ,'O2 '/)331 'H2O ' /) 334 332 335 333 CHARACTER(len=100), PARAMETER, DIMENSION(7):: eqn_names = (/ & 336 334 ' NO2 --> O3 + NO ',& 337 ' O3 --> 2 OH + O2',&335 'O3 + H2O --> 2 OH ',& 338 336 ' O3 + NO --> NO2 ',& 339 337 ' RH + OH --> RO2 + H2O ',& … … 385 383 ! 386 384 ! File : chem_gasphase_mod_Initialize.f90 387 ! Time : Fri Dec 7 12:47:102018388 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm385 ! Time : Thu Dec 20 14:57:44 2018 386 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 389 387 ! Equation file : chem_gasphase_mod.kpp 390 388 ! Output root filename : chem_gasphase_mod … … 411 409 ! 412 410 ! File : chem_gasphase_mod_Integrator.f90 413 ! Time : Fri Dec 7 12:47:102018414 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm411 ! Time : Thu Dec 20 14:57:44 2018 412 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 415 413 ! Equation file : chem_gasphase_mod.kpp 416 414 ! Output root filename : chem_gasphase_mod … … 469 467 ! 470 468 ! File : chem_gasphase_mod_LinearAlgebra.f90 471 ! Time : Fri Dec 7 12:47:102018472 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm469 ! Time : Thu Dec 20 14:57:44 2018 470 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 473 471 ! Equation file : chem_gasphase_mod.kpp 474 472 ! Output root filename : chem_gasphase_mod … … 496 494 ! 497 495 ! File : chem_gasphase_mod_Jacobian.f90 498 ! Time : Fri Dec 7 12:47:102018499 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm496 ! Time : Thu Dec 20 14:57:44 2018 497 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 500 498 ! Equation file : chem_gasphase_mod.kpp 501 499 ! Output root filename : chem_gasphase_mod … … 523 521 ! 524 522 ! File : chem_gasphase_mod_Function.f90 525 ! Time : Fri Dec 7 12:47:102018526 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm523 ! Time : Thu Dec 20 14:57:44 2018 524 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 527 525 ! Equation file : chem_gasphase_mod.kpp 528 526 ! Output root filename : chem_gasphase_mod … … 552 550 ! 553 551 ! File : chem_gasphase_mod_Rates.f90 554 ! Time : Fri Dec 7 12:47:102018555 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm552 ! Time : Thu Dec 20 14:57:44 2018 553 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 556 554 ! Equation file : chem_gasphase_mod.kpp 557 555 ! Output root filename : chem_gasphase_mod … … 578 576 ! 579 577 ! File : chem_gasphase_mod_Util.f90 580 ! Time : Fri Dec 7 12:47:102018581 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm578 ! Time : Thu Dec 20 14:57:44 2018 579 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 582 580 ! Equation file : chem_gasphase_mod.kpp 583 581 ! Output root filename : chem_gasphase_mod … … 789 787 ! Computation of equation rates 790 788 a(1) = rct(1) * v(7) 791 a(2) = rct(2) * v(8) 789 a(2) = rct(2) * v(8) * f(1) 792 790 a(3) = rct(3) * v(8) * v(9) 793 791 a(4) = rct(4) * v(3) * v(6) … … 847 845 ! Local variables 848 846 ! B - Temporary array 849 REAL(kind=dp):: b(1 2)847 REAL(kind=dp):: b(13) 850 848 851 849 ! B(1) = dA(1)/dV(7) 852 850 b(1) = rct(1) 853 851 ! B(2) = dA(2)/dV(8) 854 b(2) = rct(2) 855 ! B( 3) = dA(3)/dV(8)856 b( 3) = rct(3) * v(9)857 ! B( 4) = dA(3)/dV(9)858 b( 4) = rct(3) * v(8)859 ! B( 5) = dA(4)/dV(3)860 b( 5) = rct(4) * v(6)861 ! B( 6) = dA(4)/dV(6)862 b( 6) = rct(4) * v(3)863 ! B( 7) = dA(5)/dV(5)864 b( 7) = rct(5) * v(9)865 ! B( 8) = dA(5)/dV(9)866 b( 8) = rct(5) * v(5)867 ! B( 9) = dA(6)/dV(4)868 b( 9) = rct(6) * v(9)869 ! B(1 0) = dA(6)/dV(9)870 b(1 0) = rct(6) * v(4)871 ! B(1 1) = dA(7)/dV(6)872 b(1 1) = rct(7) * v(7)873 ! B(1 2) = dA(7)/dV(7)874 b(1 2) = rct(7) * v(6)852 b(2) = rct(2) * f(1) 853 ! B(4) = dA(3)/dV(8) 854 b(4) = rct(3) * v(9) 855 ! B(5) = dA(3)/dV(9) 856 b(5) = rct(3) * v(8) 857 ! B(6) = dA(4)/dV(3) 858 b(6) = rct(4) * v(6) 859 ! B(7) = dA(4)/dV(6) 860 b(7) = rct(4) * v(3) 861 ! B(8) = dA(5)/dV(5) 862 b(8) = rct(5) * v(9) 863 ! B(9) = dA(5)/dV(9) 864 b(9) = rct(5) * v(5) 865 ! B(10) = dA(6)/dV(4) 866 b(10) = rct(6) * v(9) 867 ! B(11) = dA(6)/dV(9) 868 b(11) = rct(6) * v(4) 869 ! B(12) = dA(7)/dV(6) 870 b(12) = rct(7) * v(7) 871 ! B(13) = dA(7)/dV(7) 872 b(13) = rct(7) * v(6) 875 873 876 874 ! Construct the Jacobian terms from B's … … 878 876 jvs(1) = 0 879 877 ! JVS(2) = Jac_FULL(1,6) 880 jvs(2) = b(1 1)878 jvs(2) = b(12) 881 879 ! JVS(3) = Jac_FULL(1,7) 882 jvs(3) = b(1 2)880 jvs(3) = b(13) 883 881 ! JVS(4) = Jac_FULL(2,2) 884 882 jvs(4) = 0 885 883 ! JVS(5) = Jac_FULL(2,5) 886 jvs(5) = b( 7)884 jvs(5) = b(8) 887 885 ! JVS(6) = Jac_FULL(2,9) 888 jvs(6) = b( 8)886 jvs(6) = b(9) 889 887 ! JVS(7) = Jac_FULL(3,3) 890 jvs(7) = - b( 5)888 jvs(7) = - b(6) 891 889 ! JVS(8) = Jac_FULL(3,6) 892 jvs(8) = - b( 6)890 jvs(8) = - b(7) 893 891 ! JVS(9) = Jac_FULL(4,4) 894 jvs(9) = - b( 9)892 jvs(9) = - b(10) 895 893 ! JVS(10) = Jac_FULL(4,5) 896 jvs(10) = b( 7)894 jvs(10) = b(8) 897 895 ! JVS(11) = Jac_FULL(4,9) 898 jvs(11) = b( 8) - b(10)896 jvs(11) = b(9) - b(11) 899 897 ! JVS(12) = Jac_FULL(5,3) 900 jvs(12) = b( 5)898 jvs(12) = b(6) 901 899 ! JVS(13) = Jac_FULL(5,5) 902 jvs(13) = - b( 7)900 jvs(13) = - b(8) 903 901 ! JVS(14) = Jac_FULL(5,6) 904 jvs(14) = b( 6)902 jvs(14) = b(7) 905 903 ! JVS(15) = Jac_FULL(5,9) 906 jvs(15) = - b( 8)904 jvs(15) = - b(9) 907 905 ! JVS(16) = Jac_FULL(6,3) 908 jvs(16) = - b( 5)906 jvs(16) = - b(6) 909 907 ! JVS(17) = Jac_FULL(6,4) 910 jvs(17) = b( 9)908 jvs(17) = b(10) 911 909 ! JVS(18) = Jac_FULL(6,5) 912 910 jvs(18) = 0 913 911 ! JVS(19) = Jac_FULL(6,6) 914 jvs(19) = - b( 6) - b(11)912 jvs(19) = - b(7) - b(12) 915 913 ! JVS(20) = Jac_FULL(6,7) 916 jvs(20) = - b(1 2)914 jvs(20) = - b(13) 917 915 ! JVS(21) = Jac_FULL(6,8) 918 916 jvs(21) = 2* b(2) 919 917 ! JVS(22) = Jac_FULL(6,9) 920 jvs(22) = b(1 0)918 jvs(22) = b(11) 921 919 ! JVS(23) = Jac_FULL(7,4) 922 jvs(23) = b( 9)920 jvs(23) = b(10) 923 921 ! JVS(24) = Jac_FULL(7,5) 924 jvs(24) = b( 7)922 jvs(24) = b(8) 925 923 ! JVS(25) = Jac_FULL(7,6) 926 jvs(25) = - b(1 1)924 jvs(25) = - b(12) 927 925 ! JVS(26) = Jac_FULL(7,7) 928 jvs(26) = - b(1) - b(1 2)926 jvs(26) = - b(1) - b(13) 929 927 ! JVS(27) = Jac_FULL(7,8) 930 jvs(27) = b( 3)928 jvs(27) = b(4) 931 929 ! JVS(28) = Jac_FULL(7,9) 932 jvs(28) = b( 4) + b(8) + b(10)930 jvs(28) = b(5) + b(9) + b(11) 933 931 ! JVS(29) = Jac_FULL(8,7) 934 932 jvs(29) = b(1) 935 933 ! JVS(30) = Jac_FULL(8,8) 936 jvs(30) = - b(2) - b( 3)934 jvs(30) = - b(2) - b(4) 937 935 ! JVS(31) = Jac_FULL(8,9) 938 jvs(31) = - b( 4)936 jvs(31) = - b(5) 939 937 ! JVS(32) = Jac_FULL(9,4) 940 jvs(32) = - b( 9)938 jvs(32) = - b(10) 941 939 ! JVS(33) = Jac_FULL(9,5) 942 jvs(33) = - b( 7)940 jvs(33) = - b(8) 943 941 ! JVS(34) = Jac_FULL(9,6) 944 942 jvs(34) = 0 … … 946 944 jvs(35) = b(1) 947 945 ! JVS(36) = Jac_FULL(9,8) 948 jvs(36) = - b( 3)946 jvs(36) = - b(4) 949 947 ! JVS(37) = Jac_FULL(9,9) 950 jvs(37) = - b( 4) - b(8) - b(10)948 jvs(37) = - b(5) - b(9) - b(11) 951 949 952 950 END SUBROUTINE jac_sp … … 976 974 977 975 rconst(1) = (phot(j_no2)) 978 rconst(2) = ( phot(j_o31d) * 0.1_dp)976 rconst(2) = (2.0_dp * 2.2e-10_dp * phot(j_o31d) / (arr2(1.9e+8_dp , -390.0_dp , temp))) 979 977 rconst(3) = (arr2(1.8e-12_dp , 1370.0_dp , temp)) 980 978 rconst(4) = (arr2(2.e-11_dp , 500.0_dp , temp)) -
palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simple/simple.eqn
r3606 r3639 2 2 Current revision 3 3 ---------------- 4 201711 Created simple.eqn with 6 equations forkel 4 20181220 Fixed effective rate of equation 2 forkel 5 according to eq. 11.1 of 6 http://acmg.seas.harvard.edu/publications/jacobbook/bookchap11.pdf 5 7 20180316 Added equation no. 7 forkel 8 201711xx Created simple.eqn with 6 equations forkel 6 9 } 7 10 #EQUATIONS … … 10 13 11 14 { 1.} NO2 + hv = NO + O3 : phot(j_no2) ; 12 { 2.} O3 + hv = 2OH + O2 : phot(j_o31d) * 0.1_dp;15 { 2.} O3 + H2O = 2OH : 2.0_dp * 2.2E-10_dp * phot(j_o31d) / (arr2(1.9E+8_dp, -390.0_dp, temp)); 13 16 { 3.} NO + O3 = NO2 : arr2(1.8E-12_dp, 1370.0_dp, temp) ; 14 17 { 4.} RH + OH = RO2 + H2O : arr2(2.E-11_dp, 500.0_dp, temp) ;
Note: See TracChangeset
for help on using the changeset viewer.