- Timestamp:
- Dec 20, 2018 2:06:18 PM (6 years ago)
- Location:
- palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simplep
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simplep/chem_gasphase_mod.f90
r3606 r3639 113 113 ! 114 114 ! File : chem_gasphase_mod_Parameters.f90 115 ! Time : Fri Dec 7 12:47:152018116 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm115 ! Time : Thu Dec 20 14:57:53 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 2128 INTEGER, PARAMETER :: nspec = 11 129 129 ! NVAR - Number of Variable species 130 130 INTEGER, PARAMETER :: nvar = 10 … … 132 132 INTEGER, PARAMETER :: nvaract = 8 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 = 8 … … 170 170 171 171 INTEGER, PARAMETER, PUBLIC :: ind_h2o = 11 172 INTEGER, PARAMETER, PUBLIC :: ind_o2 = 12173 172 174 173 ! Index declaration for fixed species in FIX … … 176 175 177 176 INTEGER, PARAMETER :: indf_h2o = 1 178 INTEGER, PARAMETER :: indf_o2 = 2179 177 180 178 ! NJVRP - Length of sparse Jacobian JVRP … … 200 198 ! 201 199 ! File : chem_gasphase_mod_Global.f90 202 ! Time : Fri Dec 7 12:47:152018203 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm200 ! Time : Thu Dec 20 14:57:53 2018 201 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 204 202 ! Equation file : chem_gasphase_mod.kpp 205 203 ! Output root filename : chem_gasphase_mod … … 267 265 ! 268 266 ! File : chem_gasphase_mod_JacobianSP.f90 269 ! Time : Fri Dec 7 12:47:152018270 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm267 ! Time : Thu Dec 20 14:57:53 2018 268 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 271 269 ! Equation file : chem_gasphase_mod.kpp 272 270 ! Output root filename : chem_gasphase_mod … … 317 315 ! 318 316 ! File : chem_gasphase_mod_Monitor.f90 319 ! Time : Fri Dec 7 12:47:152018320 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm317 ! Time : Thu Dec 20 14:57:53 2018 318 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 321 319 ! Equation file : chem_gasphase_mod.kpp 322 320 ! Output root filename : chem_gasphase_mod … … 328 326 329 327 330 CHARACTER(len=15), PARAMETER, DIMENSION(1 2):: spc_names = (/ &328 CHARACTER(len=15), PARAMETER, DIMENSION(11):: spc_names = (/ & 331 329 'PM10 ','HNO3 ','RCHO ',& 332 330 'RH ','HO2 ','O3 ',& 333 331 'OH ','RO2 ','NO ',& 334 'NO2 ','H2O ' ,'O2 '/)332 'NO2 ','H2O ' /) 335 333 336 334 CHARACTER(len=100), PARAMETER, DIMENSION(8):: eqn_names = (/ & 337 335 ' NO2 --> O3 + NO ',& 338 ' O3 --> 2 OH + O2',&336 'O3 + H2O --> 2 OH ',& 339 337 ' O3 + NO --> NO2 ',& 340 338 ' RH + OH --> RO2 + H2O ',& … … 387 385 ! 388 386 ! File : chem_gasphase_mod_Initialize.f90 389 ! Time : Fri Dec 7 12:47:152018390 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm387 ! Time : Thu Dec 20 14:57:53 2018 388 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 391 389 ! Equation file : chem_gasphase_mod.kpp 392 390 ! Output root filename : chem_gasphase_mod … … 413 411 ! 414 412 ! File : chem_gasphase_mod_Integrator.f90 415 ! Time : Fri Dec 7 12:47:152018416 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm413 ! Time : Thu Dec 20 14:57:53 2018 414 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 417 415 ! Equation file : chem_gasphase_mod.kpp 418 416 ! Output root filename : chem_gasphase_mod … … 471 469 ! 472 470 ! File : chem_gasphase_mod_LinearAlgebra.f90 473 ! Time : Fri Dec 7 12:47:152018474 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm471 ! Time : Thu Dec 20 14:57:53 2018 472 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 475 473 ! Equation file : chem_gasphase_mod.kpp 476 474 ! Output root filename : chem_gasphase_mod … … 498 496 ! 499 497 ! File : chem_gasphase_mod_Jacobian.f90 500 ! Time : Fri Dec 7 12:47:152018501 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm498 ! Time : Thu Dec 20 14:57:53 2018 499 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 502 500 ! Equation file : chem_gasphase_mod.kpp 503 501 ! Output root filename : chem_gasphase_mod … … 525 523 ! 526 524 ! File : chem_gasphase_mod_Function.f90 527 ! Time : Fri Dec 7 12:47:152018528 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm525 ! Time : Thu Dec 20 14:57:53 2018 526 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 529 527 ! Equation file : chem_gasphase_mod.kpp 530 528 ! Output root filename : chem_gasphase_mod … … 554 552 ! 555 553 ! File : chem_gasphase_mod_Rates.f90 556 ! Time : Fri Dec 7 12:47:152018557 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm554 ! Time : Thu Dec 20 14:57:53 2018 555 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 558 556 ! Equation file : chem_gasphase_mod.kpp 559 557 ! Output root filename : chem_gasphase_mod … … 580 578 ! 581 579 ! File : chem_gasphase_mod_Util.f90 582 ! Time : Fri Dec 7 12:47:152018583 ! Working directory : /home/forkel-r/palmstuff/work/trunk201812 06/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm580 ! Time : Thu Dec 20 14:57:53 2018 581 ! Working directory : /home/forkel-r/palmstuff/work/trunk20181220/UTIL/chemistry/gasphase_preproc/tmp_kpp4palm 584 582 ! Equation file : chem_gasphase_mod.kpp 585 583 ! Output root filename : chem_gasphase_mod … … 791 789 ! Computation of equation rates 792 790 a(1) = rct(1) * v(10) 793 a(2) = rct(2) * v(6) 791 a(2) = rct(2) * v(6) * f(1) 794 792 a(3) = rct(3) * v(6) * v(9) 795 793 a(4) = rct(4) * v(4) * v(7) … … 850 848 ! Local variables 851 849 ! B - Temporary array 852 REAL(kind=dp):: b(1 3)850 REAL(kind=dp):: b(14) 853 851 854 852 ! B(1) = dA(1)/dV(10) 855 853 b(1) = rct(1) 856 854 ! B(2) = dA(2)/dV(6) 857 b(2) = rct(2) 858 ! B( 3) = dA(3)/dV(6)859 b( 3) = rct(3) * v(9)860 ! B( 4) = dA(3)/dV(9)861 b( 4) = rct(3) * v(6)862 ! B( 5) = dA(4)/dV(4)863 b( 5) = rct(4) * v(7)864 ! B( 6) = dA(4)/dV(7)865 b( 6) = rct(4) * v(4)866 ! B( 7) = dA(5)/dV(8)867 b( 7) = rct(5) * v(9)868 ! B( 8) = dA(5)/dV(9)869 b( 8) = rct(5) * v(8)870 ! B( 9) = dA(6)/dV(5)871 b( 9) = rct(6) * v(9)872 ! B(1 0) = dA(6)/dV(9)873 b(1 0) = rct(6) * v(5)874 ! B(1 1) = dA(7)/dV(7)875 b(1 1) = rct(7) * v(10)876 ! B(1 2) = dA(7)/dV(10)877 b(1 2) = rct(7) * v(7)878 ! B(1 3) = dA(8)/dV(1)879 b(1 3) = rct(8)855 b(2) = rct(2) * f(1) 856 ! B(4) = dA(3)/dV(6) 857 b(4) = rct(3) * v(9) 858 ! B(5) = dA(3)/dV(9) 859 b(5) = rct(3) * v(6) 860 ! B(6) = dA(4)/dV(4) 861 b(6) = rct(4) * v(7) 862 ! B(7) = dA(4)/dV(7) 863 b(7) = rct(4) * v(4) 864 ! B(8) = dA(5)/dV(8) 865 b(8) = rct(5) * v(9) 866 ! B(9) = dA(5)/dV(9) 867 b(9) = rct(5) * v(8) 868 ! B(10) = dA(6)/dV(5) 869 b(10) = rct(6) * v(9) 870 ! B(11) = dA(6)/dV(9) 871 b(11) = rct(6) * v(5) 872 ! B(12) = dA(7)/dV(7) 873 b(12) = rct(7) * v(10) 874 ! B(13) = dA(7)/dV(10) 875 b(13) = rct(7) * v(7) 876 ! B(14) = dA(8)/dV(1) 877 b(14) = rct(8) 880 878 881 879 ! Construct the Jacobian terms from B's … … 885 883 jvs(2) = 0 886 884 ! JVS(3) = Jac_FULL(2,7) 887 jvs(3) = b(1 1)885 jvs(3) = b(12) 888 886 ! JVS(4) = Jac_FULL(2,10) 889 jvs(4) = b(1 2)887 jvs(4) = b(13) 890 888 ! JVS(5) = Jac_FULL(3,3) 891 889 jvs(5) = 0 892 890 ! JVS(6) = Jac_FULL(3,8) 893 jvs(6) = b( 7)891 jvs(6) = b(8) 894 892 ! JVS(7) = Jac_FULL(3,9) 895 jvs(7) = b( 8)893 jvs(7) = b(9) 896 894 ! JVS(8) = Jac_FULL(4,4) 897 jvs(8) = - b( 5)895 jvs(8) = - b(6) 898 896 ! JVS(9) = Jac_FULL(4,7) 899 jvs(9) = - b( 6)897 jvs(9) = - b(7) 900 898 ! JVS(10) = Jac_FULL(5,5) 901 jvs(10) = - b( 9)899 jvs(10) = - b(10) 902 900 ! JVS(11) = Jac_FULL(5,8) 903 jvs(11) = b( 7)901 jvs(11) = b(8) 904 902 ! JVS(12) = Jac_FULL(5,9) 905 jvs(12) = b( 8) - b(10)903 jvs(12) = b(9) - b(11) 906 904 ! JVS(13) = Jac_FULL(6,6) 907 jvs(13) = - b(2) - b( 3)905 jvs(13) = - b(2) - b(4) 908 906 ! JVS(14) = Jac_FULL(6,9) 909 jvs(14) = - b( 4)907 jvs(14) = - b(5) 910 908 ! JVS(15) = Jac_FULL(6,10) 911 909 jvs(15) = b(1) 912 910 ! JVS(16) = Jac_FULL(7,4) 913 jvs(16) = - b( 5)911 jvs(16) = - b(6) 914 912 ! JVS(17) = Jac_FULL(7,5) 915 jvs(17) = b( 9)913 jvs(17) = b(10) 916 914 ! JVS(18) = Jac_FULL(7,6) 917 915 jvs(18) = 2* b(2) 918 916 ! JVS(19) = Jac_FULL(7,7) 919 jvs(19) = - b( 6) - b(11)917 jvs(19) = - b(7) - b(12) 920 918 ! JVS(20) = Jac_FULL(7,8) 921 919 jvs(20) = 0 922 920 ! JVS(21) = Jac_FULL(7,9) 923 jvs(21) = b(1 0)921 jvs(21) = b(11) 924 922 ! JVS(22) = Jac_FULL(7,10) 925 jvs(22) = - b(1 2)923 jvs(22) = - b(13) 926 924 ! JVS(23) = Jac_FULL(8,4) 927 jvs(23) = b( 5)925 jvs(23) = b(6) 928 926 ! JVS(24) = Jac_FULL(8,7) 929 jvs(24) = b( 6)927 jvs(24) = b(7) 930 928 ! JVS(25) = Jac_FULL(8,8) 931 jvs(25) = - b( 7)929 jvs(25) = - b(8) 932 930 ! JVS(26) = Jac_FULL(8,9) 933 jvs(26) = - b( 8)931 jvs(26) = - b(9) 934 932 ! JVS(27) = Jac_FULL(8,10) 935 933 jvs(27) = 0 936 934 ! JVS(28) = Jac_FULL(9,5) 937 jvs(28) = - b( 9)935 jvs(28) = - b(10) 938 936 ! JVS(29) = Jac_FULL(9,6) 939 jvs(29) = - b( 3)937 jvs(29) = - b(4) 940 938 ! JVS(30) = Jac_FULL(9,8) 941 jvs(30) = - b( 7)939 jvs(30) = - b(8) 942 940 ! JVS(31) = Jac_FULL(9,9) 943 jvs(31) = - b( 4) - b(8) - b(10)941 jvs(31) = - b(5) - b(9) - b(11) 944 942 ! JVS(32) = Jac_FULL(9,10) 945 943 jvs(32) = b(1) 946 944 ! JVS(33) = Jac_FULL(10,5) 947 jvs(33) = b( 9)945 jvs(33) = b(10) 948 946 ! JVS(34) = Jac_FULL(10,6) 949 jvs(34) = b( 3)947 jvs(34) = b(4) 950 948 ! JVS(35) = Jac_FULL(10,7) 951 jvs(35) = - b(1 1)949 jvs(35) = - b(12) 952 950 ! JVS(36) = Jac_FULL(10,8) 953 jvs(36) = b( 7)951 jvs(36) = b(8) 954 952 ! JVS(37) = Jac_FULL(10,9) 955 jvs(37) = b( 4) + b(8) + b(10)953 jvs(37) = b(5) + b(9) + b(11) 956 954 ! JVS(38) = Jac_FULL(10,10) 957 jvs(38) = - b(1) - b(1 2)955 jvs(38) = - b(1) - b(13) 958 956 959 957 END SUBROUTINE jac_sp … … 983 981 984 982 rconst(1) = (phot(j_no2)) 985 rconst(2) = ( phot(j_o31d) * 0.1_dp)983 rconst(2) = (2.0_dp * 2.2e-10_dp * phot(j_o31d) / (arr2(1.9e+8_dp , -390.0_dp , temp))) 986 984 rconst(3) = (arr2(1.8e-12_dp , 1370.0_dp , temp)) 987 985 rconst(4) = (arr2(2.e-11_dp , 500.0_dp , temp)) -
palm/trunk/UTIL/chemistry/gasphase_preproc/mechanisms/def_simplep/simplep.eqn
r3606 r3639 2 2 Current revision 3 3 ---------------- 4 201711 Created simple.eqn with 6 equations forkel 5 20180316 'simple' gas phase chemistry with additional tracer named PM10 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 7 20180316 Added passive compound named PM10 forkel 8 20180316 Added equation no. 7 forkel 9 201711xx Created simple.eqn with 6 equations forkel 6 10 } 7 11 #EQUATIONS … … 10 14 11 15 { 1.} NO2 + hv = NO + O3 : phot(j_no2) ; 12 { 2.} O3 + hv = 2OH + O2 : phot(j_o31d) * 0.1_dp;16 { 2.} O3 + H2O = 2OH : 2.0_dp * 2.2E-10_dp * phot(j_o31d) / (arr2(1.9E+8_dp, -390.0_dp, temp)); 13 17 { 3.} NO + O3 = NO2 : arr2(1.8E-12_dp, 1370.0_dp, temp) ; 14 18 { 4.} RH + OH = RO2 + H2O : arr2(2.E-11_dp, 500.0_dp, temp) ;
Note: See TracChangeset
for help on using the changeset viewer.